<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2021"
  xmlns:dei="http://xbrl.sec.gov/dei/2021q4"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:ngm="http://www.ngmbio.com/20211231"
  xmlns:srt="http://fasb.org/srt/2021-01-31"
  xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="ngm-20211231.xsd" xlink:type="simple"/>
    <context id="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i0caa6e75000443388477339e25c529a5_I20210630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
        </entity>
        <period>
            <instant>2021-06-30</instant>
        </period>
    </context>
    <context id="ie778223742234d8e918c8327126d04c9_I20220223">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
        </entity>
        <period>
            <instant>2022-02-23</instant>
        </period>
    </context>
    <context id="i0ed4f52c045c4751b51f8bd997aecf17_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i9d4476105fda483a8087815221af3bb6_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i87ab7eb7f7384aa7bbb6951273454afc_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i93a57220c5904b4ea185add768a6c61f_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i8b57a9f950ea4f62b8b5f900998b5745_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i8851701519dc4d51bf93e53589409d19_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="ie996fbecb15d46ce9794064793004919_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="ic97419cf7bd047e4b4535746e5c80e25_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i1c579bfac3cb44a98f564ff5e48aa092_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="ib7724274adaf49d3b6df9156f7dd995c_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i423bc91e484347f7a14f4cd0a5df95e4_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i08837566c7f24d179b361aa8fb99a70d_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i7dbc0b68f44b45668193bdcb05512e16_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i78bc830879324267853395e9bdb88867_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="iefcb870cb36847f09ac46964d525f204_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="icf3ff08c84cb461bb85238a558c96c40_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ie6f48fe0037d4b8b8bae6392ff522f14_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="id1f154a346884d0995255efa2a6e5fdf_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="if42cabb4bff4485b9f877d871f462439_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i5a762e71bb2644b398a0cbd977ec94b6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="id8147e6407f248a2b44bab041a474bb2_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8052d97a04f64a48a307f949de77158a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i968105b5265c411b944a123539dc52c8_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0cf3c25041a84ac097054e3e91bf5d7e_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i1af9c0db015b4112a1a755f1c795b7e1_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i37156abacd6d48a1a546e5660e1f056d_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="icb62c3185b234bf2a06ca56f8d6b4e0e_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ib93b12b3aed641939d0f1f9d0491121b_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i2928310eed2640f99f1850926c38a082_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i36c02f057ba2493680627ec19998f481_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="idab3bc87dfe1423bb55c1080d8d90681_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i2253536a269447ada2d4dad54ac9f550_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ia233f24b67c940619f59d27b67a026f2_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iedf4974e9e0b4600bc4b73dce09c838a_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i2684d94de60343b2b12ec8bd1c90d500_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i2e9e54b74f884f5084718937e298efdb_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ngm:MerckMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i8d639d849f494d0da9849957a1b43e88_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ngm:MerckMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ie55a63ff2d5940ac9f48ff7e3d2e47c3_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ngm:MerckMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8ae8fec99f764b899cd2315d48d6431c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i9fe6124bc6464837a6b844d013a27fda_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ngm:LaboratoryEquipmentAndOfficeFurnitureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i9cf558823e144b3a89c28ed43706da2b_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">ngm:OptionsToPurchaseCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ie50cfd4da85540738df74ae2afab20af_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">ngm:OptionsToPurchaseCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i7cfdaf7cffd345939ef71b028372f69d_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">ngm:OptionsToPurchaseCommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ic2fbfe204df541e8bf0e5ed6574f3529_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i6bc922b3ab344702b0e26a7a1ee5a34a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0847f3b07f3d4036b209f7cac1adf82d_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ib2bfb6c898724683b797815375aa6fdc_I20210101">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-01</instant>
        </period>
    </context>
    <context id="i2799d4c3830749f4a7250d8f4065f081_I20210101">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-01</instant>
        </period>
    </context>
    <context id="i23f467200a19459dbb9a681cc21d3119_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i5f383d62e87544baaa1acc249d8467b5_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="if593c660314f49b082a4ea5ea73b2002_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i023b525c239a4be9aeb7ce9dd489fd44_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i4f5352f15cb349498917d0f32fbe9ddb_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CashAndCashEquivalentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i771a757b934c4417a8f0de740f6f511c_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ShortTermInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i901f447ffe8a4d6db6f9e6bbb7ad9195_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="icc0d23a93dcb4f8ea27bcca7ac6331ad_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="iad508477f2e94405a08c7a850c9aa9bf_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ieeee8e21020b44cc9cb367b29f2a156a_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ide2340b39f4640e1b8d9ebb28e6bd7da_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CashAndCashEquivalentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i4ccde188acbe46f8a1e7d2077912cdf8_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ShortTermInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i1bb3e8119c504bf483a3dc048c245adb_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="id4bd534b0d58493391253ac871f6f0d7_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="id868208e41984f17bd1b3173eb9696ce_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i6c1b81f6c79645eda72ed1bc1e082b1d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3b7f35caacf64fc6aff43db4316ac0a7_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i42431b0fdcf348f8bda6ace5e3fb0cfc_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iad34ea666aaa457a8e4399ccc1651cd9_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3315abe5979645a6851e0d7ca955a9bd_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie9c247a5f8d34ca59661a51a2a7c9b9d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie48f273df0e14e24b851b944497e0fe0_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ia4f7972ec6324c74808dea7290a1fa42_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i55cbf4a8e8d84d69b7a64efb3db99a93_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ib782a99f3d5847c2b78215f55216fde2_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i6b13c3aa7efc4677bb780e63684334fd_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i5fb593c1643f4cdf87375d7b97c13403_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i77c19b2f79b949888f226e09a6634fe5_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i393b15d9d5ae425c8bffcfbb5d4f7275_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i5d50e465890241bbb0ed21e3a9455a1a_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i8532b128e56545569752f8e216970ec3_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i41583c277a9445dd83dd77387c4dbba2_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i75e4053f27594ed194298943803ed9c9_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i086263338f404658be02a5c7b5b57a49_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="id400a7d1e3c04c898e471a27e021151c_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ia6c38ffee9004e7db0b5602e0cff7619_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i0b7f2ea9367843cdbb08d0382fb449c2_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ife23c234453c46c8b680f43186951867_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i44a1f1845bfe47768bf06ee095a47c99_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i0b066dfa46964d9a9bbffce73d3aa0c1_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i525ad2417fda46128cf38a85be0067f9_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i3953a32eb2dd487fa508777c4296e159_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i25be55c19fec40e7acf77b095c1cbed2_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i4b80ec368d6042fea7d02441ba672fd7_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ia018b4cbdeb749fe9ae48b534cad9a04_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i4f47f5abe66a48a685700a407381b529_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i0c49ea8b364340f8a5d6ce39fff7c740_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i78f779afefb747ea928768a2826127be_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i31b6f9d9cad04e05b79dfcaeea8357c4_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ib8e8747971cb42e58e2751ce7a9baf26_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ibb540972049f4128befae884a24d42be_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i54505d909fc0454fa8d7ddab197ce4a3_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ibdd23095afd54e45bd05a4f3fc5201c3_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i701b196ffac34c27aac9d2fe6d37a086_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i6628d1114338446dac24c2bc2f322825_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ngm:LaboratoryEquipmentAndOfficeFurnitureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i608212364de2463faad2453631fcde81_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ngm:LaboratoryEquipmentAndOfficeFurnitureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ib77b6de97e314d25b807c4925945ef21_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i9b5a67e214184f88b719e7afbb86a1a1_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i050d23d0e98049dc9ad88e3583195aee_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i38542f34dfc04196872be6bf0d870df1_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i8952037b43ec426584b47c6dfa41b303_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i7349e63f52244a4983e658f30828b28a_D20150101-20151231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckOriginalAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-01-01</startDate>
            <endDate>2015-12-31</endDate>
        </period>
    </context>
    <context id="iaad76ce32ab1489ab52d1de7a7358599_I20151231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckOriginalAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2015-12-31</instant>
        </period>
    </context>
    <context id="i561344f0614e4624b069d55c07962556_D20150101-20151231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-01-01</startDate>
            <endDate>2015-12-31</endDate>
        </period>
    </context>
    <context id="ic5262a1a3dc0484995673d4a0beaacc1_D20190301-20190331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckOriginalAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-03-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="ie0768bb9a5ca4d8aacde875819c24619_D20150101-20151231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-01-01</startDate>
            <endDate>2015-12-31</endDate>
        </period>
    </context>
    <context id="i20a525d666f3426b92f72f61d98087b4_D20210101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i6321ef9097fd4ab880e1a108802672e9_D20181101-20181130">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckOriginalAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-11-01</startDate>
            <endDate>2018-11-30</endDate>
        </period>
    </context>
    <context id="if2e8e133d08f40c5ba9e65b412afd7d5_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i743c02adf6064a66b3e0c3caf7c05d81_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i98a68c1820fc417bb07e86d511ac1800_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:SmallMoleculeCompoundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="icf2c8ef831eb4c17b0eff8bbc31cd282_I20181130">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-11-30</instant>
        </period>
    </context>
    <context id="id8c0c38ba15c4034b9f37ddeb1c16a90_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i914bcdcf60324267950653ee698e808a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckOriginalAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iceb83a4ccf0a47538dae669cda033b90_D20200317-20200317">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckOriginalAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-03-17</startDate>
            <endDate>2020-03-17</endDate>
        </period>
    </context>
    <context id="i22a67c0165364989b9738d1ce93a4c7a_I20200317">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckOriginalAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-17</instant>
        </period>
    </context>
    <context id="ic53e8e8776c94a62932a223e78fd1958_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckOriginalAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i54306b60ceb548ddb8180dd68311fe4d_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="id20bb0a6d5d74c29bb5ef497f95adf75_D20210331-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckOriginalAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-03-31</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="ide80e0a22e144561aac2b4e535ea3ac9_D20210401-20210401">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckAmendedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-01</startDate>
            <endDate>2021-04-01</endDate>
        </period>
    </context>
    <context id="i70da91517440498ba3491726d00d69df_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckAmendedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i5acacaa20cb34179a3f9d2c10eebaf33_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckAmendedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i0d3f4130835849d583d91969bd4af9db_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckAmendedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ie69d7f88fcf0484f94aec8a5d8500814_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckAmendedAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="ngm:ClinicalDevelopmentEventAxis">ngm:ProofOfConceptTrialCVMResearchProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i59e1b18fe35c4d6ebefd7d29b26fe10c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="ngm:ClinicalDevelopmentEventAxis">ngm:ProofOfConceptTrialCVMResearchProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i0c396e63e053490194a213bfee874abb_D20210401-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckAmendedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i0bf6491d868641aa9c7347b04b1315ee_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckAmendedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i38a1237f61904f619fe91ef517fcaee3_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckAmendedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i72d95e40a99e45b193081c4711cfc5e2_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckAmendedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ied1cae7de40a40f49f44becfca706623_D20220401-20240331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckAmendedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="id34c859e660c45f189f1749f91ba11a7_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:FirstIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="ngm:ClinicalDevelopmentEventAxis">ngm:Phase3ClinicalEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i4ab125d0d0d04284afdd017157027e0e_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:SecondIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="ngm:ClinicalDevelopmentEventAxis">ngm:Phase3ClinicalEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i982cde199cca400b922b84a772bd153d_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:ThirdIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="ngm:ClinicalDevelopmentEventAxis">ngm:Phase3ClinicalEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ifc37e31d0d444314b53bef9325ca238f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:FirstIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="ngm:ClinicalDevelopmentEventAxis">ngm:ProofOfConceptTrialCVMResearchProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i81539e6f15f944309052c4fb585ced7a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:SecondIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="ngm:ClinicalDevelopmentEventAxis">ngm:ProofOfConceptTrialCVMResearchProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i88d6e37967d04f7da79ffe823a963619_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:ThirdIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="ngm:ClinicalDevelopmentEventAxis">ngm:ProofOfConceptTrialCVMResearchProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ie9dcff0f3f32463c8b31dbb9b6e1410c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:FirstIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="ngm:ClinicalDevelopmentEventAxis">ngm:ProofOfConceptTrialB7H4ResearchProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i082793a34ece4c34b7221a676bd7f943_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:SecondIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="ngm:ClinicalDevelopmentEventAxis">ngm:ProofOfConceptTrialB7H4ResearchProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i98c7717da7514f75ac6530249cc18234_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:ThirdIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="ngm:ClinicalDevelopmentEventAxis">ngm:ProofOfConceptTrialB7H4ResearchProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i4b3c8b54b72e4df5bc38ea8dae05794f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:FirstIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i8b1edebfbfa04e23942720be4b473dfa_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:SecondIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="id736cabb028b48249e042ba9d37e82f9_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:ThirdIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i2dc41a7f43a44bc39124e4d2202a8b0c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iff455e0e06a8466ebbee9881c366f443_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EuropeanUnionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:FirstIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i0bc775de792c47fab4c021347e5380a4_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EuropeanUnionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:SecondIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i5e4b2d885ded4a5180a7e3d28c3eb51c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EuropeanUnionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:ThirdIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i81d1305c340f4ba3a5ccd4c400605e4c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EuropeanUnionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ib062fdbd92f44081bfc6a43fae9363d6_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:FirstIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i2efcfe62a56944e6a36af9ac0909fbcd_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:SecondIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iaf6e3211431746f2923daa7fe18934e0_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:ThirdIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i8564718e97fb4949aa4ae68cc5765338_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iec12734a3f4c483eb22d239a421dd70f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:FirstIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i1e89ef00dd0f46e19701c213a352c654_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:SecondIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ic0e513d5fe6040818e1505017c7d9702_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CapitalizedContractCostAxis">ngm:ThirdIndicationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iea4a786385d04d0abba86bdf72072613_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ia49e1c4ca299464894343e44d69015ef_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i4211ed27f45541699a1ae4e5e0734df0_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i6fce42442a9f4eca88c50459285ca7a3_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckOriginalAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ie371af6a7d72430abcf41b6f4be7533e_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">ngm:MerckOriginalAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0c7a3e3902fb43388e169da79707b7c3_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ngm:MerckSharpAndDohmeCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">us-gaap:CollaborativeArrangementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0368adb0f04940939f943834fd029892_I20151231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ngm:CorporateOfficeSpaceAndLaboratoryFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2015-12-31</instant>
        </period>
    </context>
    <context id="i3c3071335cca4907a1289056ab9b0b1b_I20151231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ngm:CorporateOfficeSpaceAndLaboratoryFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2015-12-31</instant>
        </period>
    </context>
    <context id="id44eb73604744f029ae0cb0ee6ee6d80_I20151231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ngm:CorporateOfficeSpaceAndLaboratoryFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2015-12-31</instant>
        </period>
    </context>
    <context id="iff5548b47a714666a28e4d2fa9fa3310_D20151201-20151231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ngm:CorporateOfficeSpaceAndLaboratoryFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-12-01</startDate>
            <endDate>2015-12-31</endDate>
        </period>
    </context>
    <context id="i2e646df232284267808a9257110b4364_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:CashAndCashEquivalentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ngm:CorporateOfficeSpaceAndLaboratoryFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ic0df64ac5d4843e1be9e79ff6e8c0f88_I20090930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ngm:CorporateOfficeSpaceAndLaboratoryFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2009-09-30</instant>
        </period>
    </context>
    <context id="i43468ce926d04073877b09cdf6aa7ff6_D20090901-20090930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ngm:CorporateOfficeSpaceAndLaboratoryFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ngm:LandlordAndMerckMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2009-09-01</startDate>
            <endDate>2009-09-30</endDate>
        </period>
    </context>
    <context id="i8cb53eb79e644acfbc25c3f1e2dd7d48_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ngm:CorporateOfficeSpaceAndLaboratoryFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i638f20ad5c0f44e5be50e5a075ab7d77_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ngm:CorporateOfficeSpaceAndLaboratoryFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="if3e01d41d42b49098588bdbff92000bd_D20210101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">ngm:PublicStockOfferingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i5c6e8fd481c145b5922a743141146995_I20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">ngm:PublicStockOfferingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="i5cc057ebcce542eea7faf82421576f59_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ngm:ReserveBalanceForSalesAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i5046f5ba05504b39b7917c7e1de3ab9c_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ngm:ReserveBalanceForSalesAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i38d8cca8bce64e9298a974eddce5e25d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ngm:CommonStockOptionsOutstandingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i639aa025e65f4bc5841298976fd93a8b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ngm:CommonStockOptionsOutstandingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="if8a06807f50b46f895801539093bcae0_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ngm:CommonStockOptionsAvailableForGrantMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="id4279183744c4a78a1a13330dfaa1030_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ngm:CommonStockOptionsAvailableForGrantMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i0848256c92924c69a3b0fb6f6a8dc010_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i5736b966d011441e8e92c7e88bc934f3_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="id8a59d5056eb483290a13fd4906f24b3_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ngm:FourZeroOneKMatchingPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="id97b3d64cef7424589b459e63d45edb2_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ngm:FourZeroOneKMatchingPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ic6c25b5f0e5c47908aecc166cba4dd70_D20200601-20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">ngm:OpenMarketSalesAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-06-01</startDate>
            <endDate>2020-06-30</endDate>
        </period>
    </context>
    <context id="i87c168ebacaa409a88565a23a32f2d5b_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">ngm:OpenMarketSalesAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i6ad6aa5fc6454a939866ff306c818fb7_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">ngm:OpenMarketSalesAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="id60b51d1cd8a4a88af56f8875c7b2c6c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">ngm:OpenMarketSalesAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i4dd4d579f7f047889911fb3ac102d83b_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:StockOptionFiscalTwentyEighteenPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if846a69a3c964ef4a236550ec511128e_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:StockOptionFiscalTwentyEighteenPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i3f55bca43f0a4a2a840f9a440a2e4de1_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:StockOptionFiscalTwentyEighteenPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i28d3ee8523ec4bd08f47e8139a19bee0_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:StockOptionFiscalTwentyEighteenPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie3fc1d3388924a6da72c83b25d62986a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:StockOptionFiscalTwentyEighteenPlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:IPOMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iaf9f8e9dd1f04a6fb30181db6b177ee1_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:TenPercentOrGreaterStockholderMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:StockOptionFiscalTwentyEighteenPlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:IPOMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i2b607944e8d4445b861aa7cffd7eee00_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:TenPercentOrGreaterStockholderMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:StockOptionFiscalTwentyEighteenPlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:IPOMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i5e8cca0a8dd6421ca57ab3a455ca6eef_I20190331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:TwoThousandNineteenEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-03-31</instant>
        </period>
    </context>
    <context id="if7e9601431244749aac278933757e395_D20190331-20190331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:TwoThousandNineteenEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-03-31</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="i53a97504f4674ec5ba04a3aa7dc81cee_D20190301-20190331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:TwoThousandNineteenEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-03-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="i6f9f50161bad445caf45262af1bca118_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:TwoThousandNineteenEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ia83d4873f1d44abf98f3c2b65f3862f7_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:TwoThousandNineteenEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia2eaa4feea9d40e09864ce1950ba553f_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:TwoThousandNineteenEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i3c1d9b94363e4de0b600cbe627cba99b_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:TwoThousandNineteenEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i2b53e7c14c9a44f391b77d2c30753f01_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ie1dc2d14aae24bc1899b706b6dc67750_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="id38ac2c56628479d8597e3a98f605029_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i80d00bf2e2b847838c7f16b0dff96c9a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i4518c2f1427443a6a2e39d6b62831a43_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i99257061a65446b3a171e066ed0680bc_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i6ff09f50663b47eb8216170275ddcb14_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i723bc6799c4d4fdea7f5ef9e2610c3c4_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i526dddbedd9a4eff8c4ce470e8222018_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i974804de2b2b42ba80d12da8db4c9387_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i282508e2319d44c99db6dea1846bd565_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ief86a43e16994f21a01c99d307c4f5cb_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i01c101a4f7cf450aa40ffeedb09db5d4_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ngm:EmployeesAndDirectorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i244281db78a8442b9c0a257906b51942_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:TwoThousandNineteenEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i2dd9c5db152d4725b2d76fd55b5a67e9_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:TwoThousandNineteenEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i787e2454cb744d18b9d2a64e35718f88_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ngm:TwoThousandNineteenEmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i5a7e1b18f9324a43a1cdc926df91d7ac_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i78e508524eb647a182b5c0821d33aebc_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ia340b17a9d924b36928d4fd88928b7db_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i8fd8ae9a213446fb9f630e2782414027_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i4a29f044b30e4e65ba6b00d7658c64fc_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i15d3df4198e1404987577241fb2ee2fd_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="icd570471846d44629ce42330f89d2f67_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i8238090fc69b4c5b86760d25160a7116_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="iaf1a8a37e10a4482b0b7dfa91f67c88e_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i1dc3356045ea4b18a03e65b344629372_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i5462ebbb7cf042229acce60f2aa863f9_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i4ce4dd11d9b44894b0d6d857f519753b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ief9c3b1fc0ba46ff9e778cbe46733068_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ibdcf12795901470e9c37058c4813bdb6_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001426332</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <unit id="segment">
        <measure>ngm:segment</measure>
    </unit>
    <unit id="security">
        <measure>ngm:security</measure>
    </unit>
    <unit id="option">
        <measure>ngm:option</measure>
    </unit>
    <unit id="sqft">
        <measure>utr:sqft</measure>
    </unit>
    <unit id="period">
        <measure>ngm:period</measure>
    </unit>
    <dei:AmendmentFlag
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV80L2ZyYWc6NzBjYjY5YWE2OTkxNGYwYmI4ZWFkNTFlYzk5ZmNmOGYvdGFibGU6NDQ2NTg3OWMzMmZhNGIwZWI1NjBjMjhhMzFjZDk1NTUvdGFibGVyYW5nZTo0NDY1ODc5YzMyZmE0YjBlYjU2MGMyOGEzMWNkOTU1NV8yLTEtMS0xLTYyMjQ_9287558a-84ac-4779-bc60-eb3a3adc1669">false</dei:AmendmentFlag>
    <dei:DocumentFiscalYearFocus
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV80L2ZyYWc6NzBjYjY5YWE2OTkxNGYwYmI4ZWFkNTFlYzk5ZmNmOGYvdGFibGU6NDQ2NTg3OWMzMmZhNGIwZWI1NjBjMjhhMzFjZDk1NTUvdGFibGVyYW5nZTo0NDY1ODc5YzMyZmE0YjBlYjU2MGMyOGEzMWNkOTU1NV80LTEtMS0xLTYyMjQ_c227b2b4-fa65-433c-83aa-f2ef2080a7ce">2021</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV80L2ZyYWc6NzBjYjY5YWE2OTkxNGYwYmI4ZWFkNTFlYzk5ZmNmOGYvdGFibGU6NDQ2NTg3OWMzMmZhNGIwZWI1NjBjMjhhMzFjZDk1NTUvdGFibGVyYW5nZTo0NDY1ODc5YzMyZmE0YjBlYjU2MGMyOGEzMWNkOTU1NV81LTEtMS0xLTYyMjQ_42e90de2-fef6-4705-bec5-8a0842eca173">FY</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV80L2ZyYWc6NzBjYjY5YWE2OTkxNGYwYmI4ZWFkNTFlYzk5ZmNmOGYvdGFibGU6NDQ2NTg3OWMzMmZhNGIwZWI1NjBjMjhhMzFjZDk1NTUvdGFibGVyYW5nZTo0NDY1ODc5YzMyZmE0YjBlYjU2MGMyOGEzMWNkOTU1NV84LTEtMS0xLTYyMjQ_4811dc4c-a3ed-4478-b71c-a01afb769acd">0001426332</dei:EntityCentralIndexKey>
    <us-gaap:AccountingStandardsUpdateExtensibleList
      contextRef="ic97419cf7bd047e4b4535746e5c80e25_D20180101-20181231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTEtMC0xLTEtMTAxNzM_0e5756fd-0bed-4ca6-b4e1-98d474a4cf58">http://fasb.org/us-gaap/2021-01-31#AccountingStandardsUpdate201409Member</us-gaap:AccountingStandardsUpdateExtensibleList>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="ic5262a1a3dc0484995673d4a0beaacc1_D20190301-20190331"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg2MzE_d63a6548-69b5-40d0-a261-d2c0b51c845f">P2Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="i7349e63f52244a4983e658f30828b28a_D20150101-20151231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg3NDM_431804b2-75ba-4b73-9b65-76e2e91db2d8">P2Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
      contextRef="i5a7e1b18f9324a43a1cdc926df91d7ac_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTEvZnJhZzpmODY2MzE2ZDUzYmM0N2EzYmJmNWUxMWQwY2YxNjQxYS90YWJsZTo3YjU0NzhjNGU3ZWE0ZjhlYjZjM2VmODk2NzFlNWI2My90YWJsZXJhbmdlOjdiNTQ3OGM0ZTdlYTRmOGViNmMzZWY4OTY3MWU1YjYzXzItMS0xLTEtNjIyNA_744b10af-4480-451e-b226-c0bbf83f3167"
      unitRef="number">0.5000</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch>
    <dei:DocumentType
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NjQ4_0f9b0f76-fc99-4754-9966-d392c4facf64">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGFibGU6MTc2NjM0ZWQwNGY3NDZjOWI2NzQwOGI1N2EzZmNlNzEvdGFibGVyYW5nZToxNzY2MzRlZDA0Zjc0NmM5YjY3NDA4YjU3YTNmY2U3MV8wLTAtMS0xLTEwNjI2_0c4e9357-e884-4fac-8d1b-95a12327d7dd">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NjMw_1082b384-9b34-4b02-93ae-040210e1b30e">2021-12-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NjMw_39ccd42e-77be-4d0f-8bec-59b00c3c54eb">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentTransitionReport
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGFibGU6YTgwZjc1Y2ZiNDNjNGJiMDg1ZWMwYTc3ZDQwOWY2ZWEvdGFibGVyYW5nZTphODBmNzVjZmI0M2M0YmIwODVlYzBhNzdkNDA5ZjZlYV8wLTAtMS0xLTEwNjI5_ae33fadf-ea42-4c2f-a4f3-fd929728a216">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NjQ5_942b5bdf-acfa-4d78-9cc6-e7740a0cb48f">001-38853</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NjUw_6f3bf113-f700-4211-9daf-db69eec4331b">NGM BIOPHARMACEUTICALS, INC.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGFibGU6MzI2NzIzYWMyNDc3NDc4M2EzMjkzZDUxY2EzZmExMGIvdGFibGVyYW5nZTozMjY3MjNhYzI0Nzc0NzgzYTMyOTNkNTFjYTNmYTEwYl8wLTAtMS0xLTEwNjM1_3141156d-053a-424c-bdb4-e164a07675ab">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGFibGU6MzI2NzIzYWMyNDc3NDc4M2EzMjkzZDUxY2EzZmExMGIvdGFibGVyYW5nZTozMjY3MjNhYzI0Nzc0NzgzYTMyOTNkNTFjYTNmYTEwYl8wLTEtMS0xLTEwNjM1_ce85d46c-1945-48fe-8075-af08c936b66e">26-1679911</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NjUx_b751df79-47ed-4975-a3a7-2558bace6eb6">333 Oyster Point Boulevard</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NjUy_a7c9f695-3e62-4752-9e00-b9f7d3ddb844">South San Francisco</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NjUz_ce9b94af-e09d-43cb-8db3-f23a7d86e799">CA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NjU1_38eda5ff-08df-486d-ab3f-4c655c0c2958">94080</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NjY5_15afde05-deb7-439c-ac0f-acf9ab8b9e76">650</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5Njc4_4d600ec0-16b0-42e7-bdea-2890caf28e32">243-5555</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGFibGU6MjViYjg3MjAxNDMzNGMyNDhkZjc2NGI1YzMyOTBhMjQvdGFibGVyYW5nZToyNWJiODcyMDE0MzM0YzI0OGRmNzY0YjVjMzI5MGEyNF8xLTAtMS0xLTEwNjQz_f3b3d562-6614-452f-a975-d2e57c401a07">Common Stock, par value $0.001 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGFibGU6MjViYjg3MjAxNDMzNGMyNDhkZjc2NGI1YzMyOTBhMjQvdGFibGVyYW5nZToyNWJiODcyMDE0MzM0YzI0OGRmNzY0YjVjMzI5MGEyNF8xLTEtMS0xLTEwNjQ1_c23bcbe9-e785-4d10-9875-0b553c054fa1">NGM</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGFibGU6MjViYjg3MjAxNDMzNGMyNDhkZjc2NGI1YzMyOTBhMjQvdGFibGVyYW5nZToyNWJiODcyMDE0MzM0YzI0OGRmNzY0YjVjMzI5MGEyNF8xLTItMS0xLTEwNjQ1_f78091f1-06f0-43cc-acf5-8689f776afa9">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjYxNDM3_09a89ebc-5daf-47c9-8220-eed82bd4794b">Yes</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NzQ2_7821ffe7-cbae-4e87-8db6-3ba58030b9ea">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NzQ3_0c7f7524-b0a4-4010-b2c7-ec3e4d28ed1f">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjYxMzUx_196a7f35-b44b-4012-ba47-a44f1d48089b">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGFibGU6NjkyMzA4NGM1ZjYyNDEzNGFjMmZlOWM4ODQ5Y2MwMDgvdGFibGVyYW5nZTo2OTIzMDg0YzVmNjI0MTM0YWMyZmU5Yzg4NDljYzAwOF8wLTAtMS0xLTE1MjE2_13c1d201-2510-4642-848a-c99d95246bf5">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGFibGU6NjkyMzA4NGM1ZjYyNDEzNGFjMmZlOWM4ODQ5Y2MwMDgvdGFibGVyYW5nZTo2OTIzMDg0YzVmNjI0MTM0YWMyZmU5Yzg4NDljYzAwOF8xLTQtMS0xLTEwNjU0_fb9f090d-2ac8-4bb1-8192-f1dbc7157917">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGFibGU6NjkyMzA4NGM1ZjYyNDEzNGFjMmZlOWM4ODQ5Y2MwMDgvdGFibGVyYW5nZTo2OTIzMDg0YzVmNjI0MTM0YWMyZmU5Yzg4NDljYzAwOF8yLTQtMS0xLTEwNjUy_1c3a42fb-2648-4513-9352-b99f637cc269">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NzQ4_2014c88d-485d-46a5-b0bc-f0946926104a">true</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NzQ5_c0e97f89-9de0-429c-802e-2508ed6c4c57">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="i0caa6e75000443388477339e25c529a5_I20210630"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjYxMzgw_bf59b57a-6a55-479d-8a91-02d5616c2789"
      unitRef="usd">39014460</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="ie778223742234d8e918c8327126d04c9_I20220223"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8yMTk5MDIzMjU5NzM0_f4a99447-7b30-4cd1-b440-bea9e431de0d"
      unitRef="shares">78049340</dei:EntityCommonStockSharesOutstanding>
    <dei:DocumentsIncorporatedByReferenceTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xL2ZyYWc6NDIzMzE5ZmZhY2ZhNDM0M2E3YmNjNGIxNTJlNTI1ZmEvdGV4dHJlZ2lvbjo0MjMzMTlmZmFjZmE0MzQzYTdiY2M0YjE1MmU1MjVmYV8zODQ4MjkwNzAxNDE1_a52ad0ab-67ef-43fd-97f9-d27ba9afab7f">Portions of the registrant&#x2019;s definitive Proxy Statement for the 2022 Annual Meeting of Stockholders to be filed with the U.S. Securities and Exchange Commission pursuant to Regulation 14A not later than 120 days after the end of the fiscal year covered by this Annual Report on Form 10-K are incorporated by reference in Part III, Items 10-14 of this Annual Report on Form 10-K.</dei:DocumentsIncorporatedByReferenceTextBlock>
    <dei:AuditorFirmId
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV83OS9mcmFnOjc0ODM2Mjg4ZjRkZDRmYTdhMmZiYTQ3YmY2MzU1YzFhL3RhYmxlOjc5OGM2MjQ0YzI3ODQ3ZTQ4ODA3MTNlMGJlMzM1MjU3L3RhYmxlcmFuZ2U6Nzk4YzYyNDRjMjc4NDdlNDg4MDcxM2UwYmUzMzUyNTdfMS0wLTEtMS0yNDg3My90ZXh0cmVnaW9uOjZmMTI0MzQ3MTY2MTQ5NGE5MDFlMTJjMzM4MzAxMjcyXzIxOTkwMjMyNTU3MDA_a4ede14b-e050-427b-98a5-a7e21320cd2f">42</dei:AuditorFirmId>
    <dei:AuditorName
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84Mi9mcmFnOjQ1OGFlMjYyYzU4YzQ0YTA4MjhjNTQyNjI4NjdiZmM4L3RleHRyZWdpb246NDU4YWUyNjJjNThjNDRhMDgyOGM1NDI2Mjg2N2JmYzhfMjE5OTAyMzI2NDM3NQ_4d9dbeac-36e6-4447-93e2-84504cae22cd">Ernst &amp; Young LLP</dei:AuditorName>
    <dei:AuditorLocation
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84Mi9mcmFnOjQ1OGFlMjYyYzU4YzQ0YTA4MjhjNTQyNjI4NjdiZmM4L3RleHRyZWdpb246NDU4YWUyNjJjNThjNDRhMDgyOGM1NDI2Mjg2N2JmYzhfMjE5OTAyMzI2NDM3Nw_1343ffbe-6fdc-4faf-aa6d-b5c49317ba67">Redwood City, California</dei:AuditorLocation>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMy0xLTEtMS02MjI0_1b0c528d-53dc-4923-952d-c6e0ad97298a"
      unitRef="usd">151795000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMy0zLTEtMS02MjI0_23674dd4-1031-4aba-8ac3-344956709c31"
      unitRef="usd">147017000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:ShortTermInvestments
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfNC0xLTEtMS02MjI0_4873f1bc-9a91-4101-9a3f-1eaea34e1b93"
      unitRef="usd">214458000</us-gaap:ShortTermInvestments>
    <us-gaap:ShortTermInvestments
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfNC0zLTEtMS02MjI0_a4767654-6a8e-4d66-9e3f-d1babc772e90"
      unitRef="usd">148139000</us-gaap:ShortTermInvestments>
    <us-gaap:AccountsReceivableRelatedPartiesCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfNS0xLTEtMS02MjI0_0677e5c9-657c-4637-974e-8f5b485840a5"
      unitRef="usd">4945000</us-gaap:AccountsReceivableRelatedPartiesCurrent>
    <us-gaap:AccountsReceivableRelatedPartiesCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfNS0zLTEtMS02MjI0_7e37e699-eeb8-4db8-b866-186f389ce31f"
      unitRef="usd">333000</us-gaap:AccountsReceivableRelatedPartiesCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfNi0xLTEtMS02MjI0_f52eefe8-58f2-4005-bacd-98847bc9febe"
      unitRef="usd">0</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfNi0zLTEtMS02MjI0_a867bbde-1eda-43b2-8b3f-41a019cc2a05"
      unitRef="usd">6100000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfNy0xLTEtMS02MjI0_22f19c47-8fc5-403d-91ba-8f56f89c9b88"
      unitRef="usd">8082000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfNy0zLTEtMS02MjI0_8cdf7d70-c4cd-4ad8-9b77-49206ce4a2da"
      unitRef="usd">6837000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfOC0xLTEtMS02MjI0_7ad18876-9b4d-4b35-af2d-3f44056ebbb9"
      unitRef="usd">379280000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfOC0zLTEtMS02MjI0_a80b1384-f59f-4d1f-bd5d-777ae15bfa96"
      unitRef="usd">308426000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfOS0xLTEtMS02MjI0_f34571a5-09c4-4a0c-b5d0-c8e75bbf19ad"
      unitRef="usd">10071000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfOS0zLTEtMS02MjI0_6e122244-6678-467b-b064-dc5fca172963"
      unitRef="usd">14526000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTAtMS0xLTEtMTUwNzA_be87eaa6-dc23-4469-aad1-2e9d1823117e"
      unitRef="usd">4045000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTAtMy0xLTEtMTUwNzA_593503b5-8760-40d9-b039-2dfaeea1b858"
      unitRef="usd">0</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:RestrictedCashNoncurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTAtMS0xLTEtNjIyNA_f5cb857f-cdbf-42ad-8951-3382009a0063"
      unitRef="usd">1499000</us-gaap:RestrictedCashNoncurrent>
    <us-gaap:RestrictedCashNoncurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTAtMy0xLTEtNjIyNA_40939622-ea21-48f3-a72a-a97f16a25e17"
      unitRef="usd">1499000</us-gaap:RestrictedCashNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTEtMS0xLTEtNjIyNA_6bf7c16a-99ce-454c-aedd-038f2c431f5f"
      unitRef="usd">7492000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTEtMy0xLTEtNjIyNA_b9742d2c-b993-447a-bb10-f571e8cee3b0"
      unitRef="usd">4592000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTItMS0xLTEtNjIyNA_7ea27fcf-92f3-4cf3-9cd5-33ddd7d722f5"
      unitRef="usd">402387000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTItMy0xLTEtNjIyNA_a3edd5e7-5ef6-4998-a572-6434be307bec"
      unitRef="usd">329043000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTUtMS0xLTEtNjIyNA_11682202-2ce6-4a41-a405-8ba4251c3883"
      unitRef="usd">5246000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTUtMy0xLTEtNjIyNA_38b60f7f-ba89-44a8-85b4-308448eb5e8b"
      unitRef="usd">9663000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTYtMS0xLTEtNjIyNA_b609dd2c-9d9f-4ae6-a2a4-f0c450df2d07"
      unitRef="usd">33258000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTYtMy0xLTEtNjIyNA_02ef3acc-062d-49e8-acfc-7bc5c61d37e4"
      unitRef="usd">29945000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTgtMS0xLTEtMTUwODA_01c77216-a293-4519-b9e5-2c5c8089cbbd"
      unitRef="usd">5077000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTgtMy0xLTEtMTUwODA_fc34fbe0-5f65-45ae-a047-a7df343380d5"
      unitRef="usd">0</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:DeferredRentCreditCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTctMS0xLTEtNjIyNA_a7a852a1-c453-40f1-bb97-aa72d45522fb"
      unitRef="usd">0</us-gaap:DeferredRentCreditCurrent>
    <us-gaap:DeferredRentCreditCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTctMy0xLTEtNjIyNA_a874bb3e-d969-445f-87c9-c0b315798e51"
      unitRef="usd">2975000</us-gaap:DeferredRentCreditCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTgtMS0xLTEtNjIyNA_aa4f8503-77c3-42c9-9b3f-2516a50add3a"
      unitRef="usd">17774000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTgtMy0xLTEtNjIyNA_a3bce298-f082-4070-b9ba-81534bc9f465"
      unitRef="usd">0</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTktMS0xLTEtNjIyNA_d4cbade7-1d18-4ced-aafd-1a7c2497b6b3"
      unitRef="usd">61355000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMTktMy0xLTEtNjIyNA_65eedb85-a378-44f0-a983-830c95526f9c"
      unitRef="usd">42583000</us-gaap:LiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjMtMS0xLTEtMTUwOTA_dae3ec45-c022-4982-b1a6-998f704dffd3"
      unitRef="usd">5385000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjMtMy0xLTEtMTUwOTA_d05c1f06-d2dd-4a53-8ece-30d5d525fb67"
      unitRef="usd">0</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:DeferredRentCreditNoncurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjEtMS0xLTEtNjIyNA_acd6921c-7a29-4fc2-993d-73c73ecd351a"
      unitRef="usd">0</us-gaap:DeferredRentCreditNoncurrent>
    <us-gaap:DeferredRentCreditNoncurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjEtMy0xLTEtNjIyNA_b8b7b0d8-7473-4814-9ac7-19b22362cb21"
      unitRef="usd">6417000</us-gaap:DeferredRentCreditNoncurrent>
    <us-gaap:Liabilities
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjMtMS0xLTEtNjIyNA_0a78990f-90de-4abb-b975-2d66d3631426"
      unitRef="usd">66740000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjMtMy0xLTEtNjIyNA_e9175a3f-ed4b-4e92-8e4f-a2917e802390"
      unitRef="usd">49000000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjQtMS0xLTEtNjIyNA_e09960c5-96ca-426c-b3af-fd53ee98add2"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjQtMy0xLTEtNjIyNA_23e36775-4323-4446-8819-a8f7882835f6"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjYtMC0xLTEtOTc5MC90ZXh0cmVnaW9uOmNlNTVhMDE3NmQxMzRiYzA4MjVkYjJhOTBmZDEzYTg3XzIxOTkwMjMyNTU3MDY_b71bd3eb-88ac-4e37-9d31-dcc89bfc63f1"
      unitRef="usdPerShare">0.001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjYtMC0xLTEtOTc5MC90ZXh0cmVnaW9uOmNlNTVhMDE3NmQxMzRiYzA4MjVkYjJhOTBmZDEzYTg3XzIxOTkwMjMyNTU3MDY_d9b0094c-c950-4cc3-9fb5-9f2360ee40d8"
      unitRef="usdPerShare">0.001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjYtMC0xLTEtOTc5MC90ZXh0cmVnaW9uOmNlNTVhMDE3NmQxMzRiYzA4MjVkYjJhOTBmZDEzYTg3XzIxOTkwMjMyNTU3MTk_272dae1d-d08d-41c1-a58e-497dfd0c4c03"
      unitRef="shares">10000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjYtMC0xLTEtOTc5MC90ZXh0cmVnaW9uOmNlNTVhMDE3NmQxMzRiYzA4MjVkYjJhOTBmZDEzYTg3XzIxOTkwMjMyNTU3MTk_37c01c72-659e-44e6-89f6-8132b67044ed"
      unitRef="shares">10000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjYtMC0xLTEtOTc5MC90ZXh0cmVnaW9uOmNlNTVhMDE3NmQxMzRiYzA4MjVkYjJhOTBmZDEzYTg3XzIxOTkwMjMyNTU3MjQ_33df0e04-dab8-45ed-af02-da0d7d26c01c"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjYtMC0xLTEtOTc5MC90ZXh0cmVnaW9uOmNlNTVhMDE3NmQxMzRiYzA4MjVkYjJhOTBmZDEzYTg3XzIxOTkwMjMyNTU3MjQ_6d2264a0-f91b-48ce-b5a4-e7019523b9f5"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjYtMC0xLTEtOTc5MC90ZXh0cmVnaW9uOmNlNTVhMDE3NmQxMzRiYzA4MjVkYjJhOTBmZDEzYTg3XzIxOTkwMjMyNTU3MjQ_c7431272-1325-4369-adde-7788771f2c0b"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjYtMC0xLTEtOTc5MC90ZXh0cmVnaW9uOmNlNTVhMDE3NmQxMzRiYzA4MjVkYjJhOTBmZDEzYTg3XzIxOTkwMjMyNTU3MjQ_d0063ed5-439c-49a0-a445-b5186985230f"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockValue
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjYtMS0xLTEtNjIyNA_c630f85f-42f4-420c-956b-93fa255f0aec"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjYtMy0xLTEtNjIyNA_866219f6-77e1-4040-81b9-006b6a6d2a56"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjctMC0xLTEtOTc5Mi90ZXh0cmVnaW9uOjk5YTU5OGY3MDA5YzRlOWE5MDBlZDI3NDkwY2YyZTgxXzIxOTkwMjMyNTU3Mjg_879c7d52-17ff-4a10-85de-c20f6e9e7942"
      unitRef="usdPerShare">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjctMC0xLTEtOTc5Mi90ZXh0cmVnaW9uOjk5YTU5OGY3MDA5YzRlOWE5MDBlZDI3NDkwY2YyZTgxXzIxOTkwMjMyNTU3Mjg_90be1c32-0e31-4192-8c6b-c2d6329845bb"
      unitRef="usdPerShare">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjctMC0xLTEtOTc5Mi90ZXh0cmVnaW9uOjk5YTU5OGY3MDA5YzRlOWE5MDBlZDI3NDkwY2YyZTgxXzIxOTkwMjMyNTU3NDI_5f56ab59-b1c8-4c88-b6af-a6e724872dda"
      unitRef="shares">400000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjctMC0xLTEtOTc5Mi90ZXh0cmVnaW9uOjk5YTU5OGY3MDA5YzRlOWE5MDBlZDI3NDkwY2YyZTgxXzIxOTkwMjMyNTU3NDI_d5827aa5-1fab-4b6f-9494-e850c7183a11"
      unitRef="shares">400000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjctMC0xLTEtOTc5Mi90ZXh0cmVnaW9uOjk5YTU5OGY3MDA5YzRlOWE5MDBlZDI3NDkwY2YyZTgxXzIxOTkwMjMyNTU3NTU_1ecab1b0-fd72-47e7-a320-b51408abfec2"
      unitRef="shares">77962722</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjctMC0xLTEtOTc5Mi90ZXh0cmVnaW9uOjk5YTU5OGY3MDA5YzRlOWE5MDBlZDI3NDkwY2YyZTgxXzIxOTkwMjMyNTU3NTU_e1a426ee-cca5-415c-aa10-70e7b5bb2e96"
      unitRef="shares">77962722</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjctMC0xLTEtOTc5Mi90ZXh0cmVnaW9uOjk5YTU5OGY3MDA5YzRlOWE5MDBlZDI3NDkwY2YyZTgxXzIxOTkwMjMyNTU3Njg_1209b2c3-e5ec-4d96-94c8-1f8678db265f"
      unitRef="shares">70585364</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjctMC0xLTEtOTc5Mi90ZXh0cmVnaW9uOjk5YTU5OGY3MDA5YzRlOWE5MDBlZDI3NDkwY2YyZTgxXzIxOTkwMjMyNTU3Njg_ae951c09-1411-4ee8-837c-0c74a50a28e5"
      unitRef="shares">70585364</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjctMS0xLTEtNjIyNA_1f04cd06-8772-4beb-9666-3513e6d73680"
      unitRef="usd">78000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjctMy0xLTEtNjIyNA_0fc87fb2-a809-4174-a13a-c0e4fb7693ae"
      unitRef="usd">71000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjgtMS0xLTEtNjIyNA_f3fc8fd3-71aa-4355-9f4c-9575f0c8efe8"
      unitRef="usd">754664000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjgtMy0xLTEtNjIyNA_56a18aa7-0227-46a1-a643-856cb664f1d4"
      unitRef="usd">578599000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjktMS0xLTEtNjIyNA_0a9d4562-4bf6-423a-99a9-63dec1c42cab"
      unitRef="usd">-129000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMjktMy0xLTEtNjIyNA_c34d90c8-c4ac-4cc4-a3ff-c2ab7482a99f"
      unitRef="usd">4000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMzAtMS0xLTEtNjIyNA_6750f1e3-a3e7-4557-a990-78bc807d6588"
      unitRef="usd">-418966000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMzAtMy0xLTEtNjIyNA_01d96463-e9f5-43f0-b646-5f1e407f2ccb"
      unitRef="usd">-298631000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMzEtMS0xLTEtNjIyNA_0972ccd6-1d36-494b-b457-99c6d1a6e16a"
      unitRef="usd">335647000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMzEtMy0xLTEtNjIyNA_ac3e6770-80f9-424e-b105-39a5411f57e1"
      unitRef="usd">280043000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMzItMS0xLTEtNjIyNA_18e6d84c-b94c-4d0d-ac79-679609d218b5"
      unitRef="usd">402387000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV84NS9mcmFnOmM0Y2FhNThjMzNkYjQ3NDdhNDg3MzFjMThhMzIwMGE4L3RhYmxlOjY0MGE0MjIzNDgxOTQ5Mzk5MDE2ZjMzMjA5N2ViZjU5L3RhYmxlcmFuZ2U6NjQwYTQyMjM0ODE5NDkzOTkwMTZmMzMyMDk3ZWJmNTlfMzItMy0xLTEtNjIyNA_ba261356-a705-42de-9044-61538204e06a"
      unitRef="usd">329043000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMi0xLTEtMS02MjI0_3c6bac36-9e55-4388-b9ec-a9a5e8986c31"
      unitRef="usd">77882000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMi0zLTEtMS02MjI0_47fca737-2449-4878-a0cf-b908cfca87e6"
      unitRef="usd">87368000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMi01LTEtMS02MjI0_efe4490e-6ebb-431d-a699-408669664bfd"
      unitRef="usd">103544000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfNC0xLTEtMS02MjI0_e23c63fa-12f6-44b7-b454-cbb95f5af056"
      unitRef="usd">161712000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfNC0zLTEtMS02MjI0_9cbaaf88-0c7f-48fe-bb77-76b46a3e95c1"
      unitRef="usd">163972000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfNC01LTEtMS02MjI0_b70c150a-a52c-4643-a526-52a65de7b51c"
      unitRef="usd">129253000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfNS0xLTEtMS02MjI0_59a6c65d-0adb-4b97-881e-5b47b5eff5c8"
      unitRef="usd">36865000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfNS0zLTEtMS02MjI0_a6c0ddf9-c783-4d66-9fab-ec37daf5f1be"
      unitRef="usd">27229000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfNS01LTEtMS02MjI0_f06e4cdf-81b3-4858-9f40-65fde0684e1d"
      unitRef="usd">23631000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:OperatingExpenses
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfNi0xLTEtMS02MjI0_0efd21d7-9c61-43f0-aa13-e12923fdec2d"
      unitRef="usd">198577000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfNi0zLTEtMS02MjI0_defbe611-44e6-4a89-8115-63536ff4766d"
      unitRef="usd">191201000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfNi01LTEtMS02MjI0_14a44486-34b4-4f8f-be21-d60dd8aa9c31"
      unitRef="usd">152884000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfNy0xLTEtMS02MjI0_895a3e67-2930-48a5-b63c-b7bde360b211"
      unitRef="usd">-120695000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfNy0zLTEtMS02MjI0_eaaf3e16-c028-49e9-b240-de68abac250f"
      unitRef="usd">-103833000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfNy01LTEtMS02MjI0_b0d5a35e-cc25-41fa-a58b-5be9fa7b2192"
      unitRef="usd">-49340000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfOC0xLTEtMS02MjI0_63ffeb0b-db95-4a4f-b118-585737856a6a"
      unitRef="usd">420000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfOC0zLTEtMS02MjI0_dda9f1a0-4a11-43de-82d6-fb3fcc5c5d76"
      unitRef="usd">1939000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfOC01LTEtMS02MjI0_6ba29e14-53b1-4776-b137-43af9996256a"
      unitRef="usd">6692000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfOS0xLTEtMS02MjI0_f1b404d3-4b73-449f-b528-2db825856837"
      unitRef="usd">-60000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfOS0zLTEtMS02MjI0_fb90b224-a00b-4b62-aa5e-cea81ecf8bff"
      unitRef="usd">-593000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfOS01LTEtMS02MjI0_6f817b5b-49b6-4c4c-95be-4d70d197c4b6"
      unitRef="usd">-147000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NetIncomeLoss
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTAtMS0xLTEtNjIyNA_2a2928d5-c316-4d8c-8a4a-1839be8af3bb"
      unitRef="usd">-120335000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTAtMy0xLTEtNjIyNA_c50d68d4-fd15-4656-94bf-f506aa7a10f9"
      unitRef="usd">-102487000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTAtNS0xLTEtNjIyNA_fdb32892-8b51-4597-a731-71b219fa274d"
      unitRef="usd">-42795000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTEtMS0xLTEtNjIyNA_557f9ed5-5b6b-4ae4-9acd-e1f469eaa1c2"
      unitRef="usdPerShare">-1.56</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTEtMS0xLTEtNjIyNA_7caf1de7-7f19-4f06-837d-1da74bcdfadd"
      unitRef="usdPerShare">-1.56</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTEtMy0xLTEtNjIyNA_10d365b9-5c68-49ef-ac73-523fbf23461b"
      unitRef="usdPerShare">-1.50</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTEtMy0xLTEtNjIyNA_dc68ad89-33ba-4146-a566-07387bfd82ea"
      unitRef="usdPerShare">-1.50</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTEtNS0xLTEtNjIyNA_3e2d4c97-475e-4138-9177-af9318d7c9d2"
      unitRef="usdPerShare">-0.85</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTEtNS0xLTEtNjIyNA_be6a0f44-4711-4bd5-91ec-1f3af041176d"
      unitRef="usdPerShare">-0.85</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTItMS0xLTEtNjIyNA_1a35049e-e294-402b-b424-569f941393b7"
      unitRef="shares">77085405</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTItMS0xLTEtNjIyNA_6505142d-1002-4acf-9ebd-20e9ddf38bc9"
      unitRef="shares">77085405</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTItMy0xLTEtNjIyNA_55dbd0e4-317d-4ae1-b505-c830b8d2f1fa"
      unitRef="shares">68475378</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTItMy0xLTEtNjIyNA_b7361c21-8519-443d-ab9b-8d4871270a46"
      unitRef="shares">68475378</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTItNS0xLTEtNjIyNA_5b523faa-c567-4e76-a348-e335e45912c4"
      unitRef="shares">50297524</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85MS9mcmFnOjI0NGRmOGEzN2E5MDQyZjU4Y2NjNjMyNmI1Mzc2MDVmL3RhYmxlOmVhZGJlYzgzMzFhMDRmNTVhMmUyNTc0NjI1ODI1YTAxL3RhYmxlcmFuZ2U6ZWFkYmVjODMzMWEwNGY1NWEyZTI1NzQ2MjU4MjVhMDFfMTItNS0xLTEtNjIyNA_ee2f6259-b7d2-43f3-b3d6-7e23678f3828"
      unitRef="shares">50297524</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:NetIncomeLoss
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85NC9mcmFnOmI4OTMxZTJlMWRkMzRlM2ZhODljNWQ5Yjc5M2Q3MjViL3RhYmxlOjcxMTg0MTgxNGIyYTQ5MzY5MWM0MjVlNjY1Njg0YTIyL3RhYmxlcmFuZ2U6NzExODQxODE0YjJhNDkzNjkxYzQyNWU2NjU2ODRhMjJfMi0xLTEtMS02MjI0_b60a1fcd-dcdd-4ddd-8e1f-5d705152de4c"
      unitRef="usd">-120335000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85NC9mcmFnOmI4OTMxZTJlMWRkMzRlM2ZhODljNWQ5Yjc5M2Q3MjViL3RhYmxlOjcxMTg0MTgxNGIyYTQ5MzY5MWM0MjVlNjY1Njg0YTIyL3RhYmxlcmFuZ2U6NzExODQxODE0YjJhNDkzNjkxYzQyNWU2NjU2ODRhMjJfMi0zLTEtMS02MjI0_313b5ffb-33dc-45e4-aef0-1d9b7bc93592"
      unitRef="usd">-102487000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85NC9mcmFnOmI4OTMxZTJlMWRkMzRlM2ZhODljNWQ5Yjc5M2Q3MjViL3RhYmxlOjcxMTg0MTgxNGIyYTQ5MzY5MWM0MjVlNjY1Njg0YTIyL3RhYmxlcmFuZ2U6NzExODQxODE0YjJhNDkzNjkxYzQyNWU2NjU2ODRhMjJfMi01LTEtMS02MjI0_1df7005a-1b08-4ced-b6e0-1ea0bb8f3601"
      unitRef="usd">-42795000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85NC9mcmFnOmI4OTMxZTJlMWRkMzRlM2ZhODljNWQ5Yjc5M2Q3MjViL3RhYmxlOjcxMTg0MTgxNGIyYTQ5MzY5MWM0MjVlNjY1Njg0YTIyL3RhYmxlcmFuZ2U6NzExODQxODE0YjJhNDkzNjkxYzQyNWU2NjU2ODRhMjJfNC0xLTEtMS02MjI0_1376bdc5-c3d1-4dae-94a5-0f5408172750"
      unitRef="usd">-133000</us-gaap:OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85NC9mcmFnOmI4OTMxZTJlMWRkMzRlM2ZhODljNWQ5Yjc5M2Q3MjViL3RhYmxlOjcxMTg0MTgxNGIyYTQ5MzY5MWM0MjVlNjY1Njg0YTIyL3RhYmxlcmFuZ2U6NzExODQxODE0YjJhNDkzNjkxYzQyNWU2NjU2ODRhMjJfNC0zLTEtMS02MjI0_d60a2a3d-7f8c-47df-b6ad-4ab635d559bd"
      unitRef="usd">-21000</us-gaap:OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85NC9mcmFnOmI4OTMxZTJlMWRkMzRlM2ZhODljNWQ5Yjc5M2Q3MjViL3RhYmxlOjcxMTg0MTgxNGIyYTQ5MzY5MWM0MjVlNjY1Njg0YTIyL3RhYmxlcmFuZ2U6NzExODQxODE0YjJhNDkzNjkxYzQyNWU2NjU2ODRhMjJfNC01LTEtMS02MjI0_0b3422fd-2bf4-4f4c-b8bc-0930fb5f8697"
      unitRef="usd">292000</us-gaap:OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85NC9mcmFnOmI4OTMxZTJlMWRkMzRlM2ZhODljNWQ5Yjc5M2Q3MjViL3RhYmxlOjcxMTg0MTgxNGIyYTQ5MzY5MWM0MjVlNjY1Njg0YTIyL3RhYmxlcmFuZ2U6NzExODQxODE0YjJhNDkzNjkxYzQyNWU2NjU2ODRhMjJfNS0xLTEtMS02MjI0_ed480f83-db05-4633-83a2-b74cc8f9a960"
      unitRef="usd">-120468000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85NC9mcmFnOmI4OTMxZTJlMWRkMzRlM2ZhODljNWQ5Yjc5M2Q3MjViL3RhYmxlOjcxMTg0MTgxNGIyYTQ5MzY5MWM0MjVlNjY1Njg0YTIyL3RhYmxlcmFuZ2U6NzExODQxODE0YjJhNDkzNjkxYzQyNWU2NjU2ODRhMjJfNS0zLTEtMS02MjI0_4b94e7df-917a-4536-aebd-355f4be74aa5"
      unitRef="usd">-102508000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85NC9mcmFnOmI4OTMxZTJlMWRkMzRlM2ZhODljNWQ5Yjc5M2Q3MjViL3RhYmxlOjcxMTg0MTgxNGIyYTQ5MzY5MWM0MjVlNjY1Njg0YTIyL3RhYmxlcmFuZ2U6NzExODQxODE0YjJhNDkzNjkxYzQyNWU2NjU2ODRhMjJfNS01LTEtMS02MjI0_fbbdcda2-4789-46a6-9b32-262b6d5c661e"
      unitRef="usd">-42503000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:TemporaryEquitySharesOutstanding
      contextRef="i87ab7eb7f7384aa7bbb6951273454afc_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTAtMS0xLTEtNjIyNA_5d18c3ad-4c7c-4faf-a05a-7cc83b78a8cc"
      unitRef="shares">47267000</us-gaap:TemporaryEquitySharesOutstanding>
    <us-gaap:TemporaryEquityCarryingAmountAttributableToParent
      contextRef="i87ab7eb7f7384aa7bbb6951273454afc_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTAtMy0xLTEtNjIyNA_7be8ff40-479a-4223-aafa-75fdff5c468e"
      unitRef="usd">294874000</us-gaap:TemporaryEquityCarryingAmountAttributableToParent>
    <us-gaap:SharesOutstanding
      contextRef="i93a57220c5904b4ea185add768a6c61f_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTAtNi0xLTEtNjIyNA_0f6a4380-38da-446e-93fe-2193b1f1e3fa"
      unitRef="shares">6733000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i93a57220c5904b4ea185add768a6c61f_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTAtOC0xLTEtNjIyNA_ea052a63-eaa3-4ea3-8849-869d41d5f1cb"
      unitRef="usd">7000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8b57a9f950ea4f62b8b5f900998b5745_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTAtMTAtMS0xLTYyMjQ_d9f29dd8-95ec-40dd-b4aa-7bebf153e355"
      unitRef="usd">39258000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8851701519dc4d51bf93e53589409d19_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTAtMTItMS0xLTYyMjQ_f7fb7ee6-918a-43a8-ae32-43434ece2b1b"
      unitRef="usd">-267000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie996fbecb15d46ce9794064793004919_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTAtMTQtMS0xLTYyMjQ_593476ef-1f88-460a-9a85-e04e1656e4a6"
      unitRef="usd">-147193000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i87ab7eb7f7384aa7bbb6951273454afc_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTAtMTYtMS0xLTYyMjQ_ad2d3605-23da-4489-a26c-b3671783a358"
      unitRef="usd">-108195000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i1c579bfac3cb44a98f564ff5e48aa092_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTEtMTQtMS0xLTYyMjQ_971ebd43-e7cf-492c-9793-e545e89e896b"
      unitRef="usd">-6156000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib7724274adaf49d3b6df9156f7dd995c_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTEtMTYtMS0xLTYyMjQ_0b6bf41d-ef1c-4cf0-96c4-bbf9e3e657aa"
      unitRef="usd">-6156000</us-gaap:StockholdersEquity>
    <ngm:StockAndWarrantsIssuedDuringPeriodSharesPreferredStockAndWarrants
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTItMS0xLTEtNjIyNA_f57352aa-a7bb-42af-a571-3634ad183520"
      unitRef="shares">16000</ngm:StockAndWarrantsIssuedDuringPeriodSharesPreferredStockAndWarrants>
    <us-gaap:StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTItMy0xLTEtNjIyNA_bf47c083-0e66-4a12-8f2b-f656753330f6"
      unitRef="usd">198000</us-gaap:StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants>
    <ngm:ReclassificationsOfTemporaryToPermanentShares
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTMtMS0xLTEtNjIyNA_272b5a8f-9dc8-4385-abfc-91463b3b55a4"
      unitRef="shares">47283000</ngm:ReclassificationsOfTemporaryToPermanentShares>
    <us-gaap:ReclassificationsOfTemporaryToPermanentEquity
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTMtMy0xLTEtNjIyNA_c0cc2805-3e25-4903-858b-4659c30d00e7"
      unitRef="usd">-295072000</us-gaap:ReclassificationsOfTemporaryToPermanentEquity>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="i423bc91e484347f7a14f4cd0a5df95e4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTMtNi0xLTEtNjIyNA_aaff1e78-8880-4ba7-8ff5-0207614a4054"
      unitRef="shares">47283000</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="i423bc91e484347f7a14f4cd0a5df95e4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTMtOC0xLTEtNjIyNA_ecb2c955-d2b8-4c89-970b-52b31355ad34"
      unitRef="usd">47000</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="i08837566c7f24d179b361aa8fb99a70d_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTMtMTAtMS0xLTYyMjQ_803b8340-b5c0-4c07-8ab5-02e425143e23"
      unitRef="usd">295025000</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTMtMTYtMS0xLTYyMjQ_91f91c04-091f-4ef1-ae07-7cb49c9a40fd"
      unitRef="usd">295072000</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="i423bc91e484347f7a14f4cd0a5df95e4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTQtNi0xLTEtNjIyNA_a7e328fd-3137-496e-a865-2bc2bcc039c3"
      unitRef="shares">7521000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="i423bc91e484347f7a14f4cd0a5df95e4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTQtOC0xLTEtNjIyNA_6ae1da36-82bc-4528-ad8e-cbc5898caced"
      unitRef="usd">8000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="i08837566c7f24d179b361aa8fb99a70d_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTQtMTAtMS0xLTYyMjQ_4871cf01-0142-412d-b7d2-c0a5b7621d63"
      unitRef="usd">107748000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTQtMTYtMS0xLTYyMjQ_b6531bdb-0d45-48d6-b0ad-4c58a01db254"
      unitRef="usd">107756000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <ngm:StockIssuedDuringPeriodSharesPrivatePlacement
      contextRef="i423bc91e484347f7a14f4cd0a5df95e4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTUtNi0xLTEtNjIyNA_29aab244-31ca-4933-a19a-227ea1a6876c"
      unitRef="shares">4122000</ngm:StockIssuedDuringPeriodSharesPrivatePlacement>
    <ngm:StockIssuedDuringPeriodValuePrivatePlacement
      contextRef="i423bc91e484347f7a14f4cd0a5df95e4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTUtOC0xLTEtNjIyNA_4b067f29-c087-463e-9c74-f7b60e6e175b"
      unitRef="usd">4000</ngm:StockIssuedDuringPeriodValuePrivatePlacement>
    <ngm:StockIssuedDuringPeriodValuePrivatePlacement
      contextRef="i08837566c7f24d179b361aa8fb99a70d_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTUtMTAtMS0xLTYyMjQ_a76ef928-2fca-4e64-b4c6-f8c56d835985"
      unitRef="usd">65943000</ngm:StockIssuedDuringPeriodValuePrivatePlacement>
    <ngm:StockIssuedDuringPeriodValuePrivatePlacement
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTUtMTYtMS0xLTYyMjQ_5fd5726d-e9b5-48ef-8eae-267cbabb5027"
      unitRef="usd">65947000</ngm:StockIssuedDuringPeriodValuePrivatePlacement>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan
      contextRef="i423bc91e484347f7a14f4cd0a5df95e4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTYtNi0xLTEtNjIyNA_6b57101e-42e7-45d3-9e17-852532d26825"
      unitRef="shares">8000</us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan
      contextRef="i08837566c7f24d179b361aa8fb99a70d_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTYtMTAtMS0xLTYyMjQ_54b36857-d5a4-4ab8-81ca-5301abbbdca6"
      unitRef="usd">98000</us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTYtMTYtMS0xLTYyMjQ_5230928a-41eb-4257-822a-67854b2522f8"
      unitRef="usd">98000</us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i423bc91e484347f7a14f4cd0a5df95e4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTctNi0xLTEtNjIyNA_0b4c78a7-0f58-4ed5-85ec-a9d185c879fd"
      unitRef="shares">984000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i423bc91e484347f7a14f4cd0a5df95e4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTctOC0xLTEtNjIyNA_bbb3f958-070f-440a-8cd5-b874b0d5d832"
      unitRef="usd">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i08837566c7f24d179b361aa8fb99a70d_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTctMTAtMS0xLTYyMjQ_7fdf98b9-43ba-4fea-b963-d8ae124ef198"
      unitRef="usd">3574000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTctMTYtMS0xLTYyMjQ_ad34e605-309a-49fa-8f4a-7a2e5032a35f"
      unitRef="usd">3575000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i423bc91e484347f7a14f4cd0a5df95e4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTgtNi0xLTEtNjIyNA_91da7892-81aa-4cbe-9329-c7b20072ae56"
      unitRef="shares">103000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i08837566c7f24d179b361aa8fb99a70d_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTgtMTAtMS0xLTYyMjQ_00a9a6d3-c47f-4507-a240-801c33ba9c11"
      unitRef="usd">1270000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTgtMTYtMS0xLTYyMjQ_91ffb402-dedf-4b38-9b62-62f168a8d296"
      unitRef="usd">1270000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <ngm:StockIssuedDuringPeriodSharesVestingOfEarlyExercisedStockOptions
      contextRef="i423bc91e484347f7a14f4cd0a5df95e4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTktNi0xLTEtNjIyNA_16814298-41ca-4d5f-94b2-5355af35e0bc"
      unitRef="shares">132000</ngm:StockIssuedDuringPeriodSharesVestingOfEarlyExercisedStockOptions>
    <ngm:StockIssuedDuringPeriodValueVestingOfEarlyExercisedStockOptions
      contextRef="i08837566c7f24d179b361aa8fb99a70d_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTktMTAtMS0xLTYyMjQ_148c8932-500b-4bef-aa5f-f531dc07d8c0"
      unitRef="usd">993000</ngm:StockIssuedDuringPeriodValueVestingOfEarlyExercisedStockOptions>
    <ngm:StockIssuedDuringPeriodValueVestingOfEarlyExercisedStockOptions
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMTktMTYtMS0xLTYyMjQ_194d2861-4180-44b8-a287-4db4a7a3d373"
      unitRef="usd">993000</ngm:StockIssuedDuringPeriodValueVestingOfEarlyExercisedStockOptions>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i08837566c7f24d179b361aa8fb99a70d_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjAtMTAtMS0xLTYyMjQ_c64fae06-55cb-4077-a1d8-35b963e5973d"
      unitRef="usd">12862000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjAtMTYtMS0xLTYyMjQ_d480e831-0180-413d-b09a-aa8147e707e9"
      unitRef="usd">12862000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i7dbc0b68f44b45668193bdcb05512e16_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjEtMTItMS0xLTYyMjQ_43b55e34-7759-4bbc-a0bc-5b96450ee95f"
      unitRef="usd">292000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjEtMTYtMS0xLTYyMjQ_b28efcd6-9057-4a7a-b82e-39241bf365a5"
      unitRef="usd">292000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="i78bc830879324267853395e9bdb88867_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjItMTQtMS0xLTYyMjQ_73349c58-2da6-42c1-8866-1c394f054cb9"
      unitRef="usd">-42795000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjItMTYtMS0xLTYyMjQ_d55adaeb-2951-40dc-8443-979df5a61329"
      unitRef="usd">-42795000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="iefcb870cb36847f09ac46964d525f204_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjMtNi0xLTEtNjIyNA_d6956d7c-c7d5-4126-9cd9-99442b5fc283"
      unitRef="shares">66886000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="iefcb870cb36847f09ac46964d525f204_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjMtOC0xLTEtNjIyNA_774a758b-1ba4-4dda-b5c0-ba34f200edf8"
      unitRef="usd">67000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="icf3ff08c84cb461bb85238a558c96c40_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjMtMTAtMS0xLTYyMjQ_3c6c764c-98eb-428b-b369-77263e00be48"
      unitRef="usd">526771000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie6f48fe0037d4b8b8bae6392ff522f14_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjMtMTItMS0xLTYyMjQ_d4eed10d-ff4e-4a97-ad56-1c1becf217d4"
      unitRef="usd">25000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id1f154a346884d0995255efa2a6e5fdf_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjMtMTQtMS0xLTYyMjQ_6d1acab7-7f60-4a35-8302-6aed82558da8"
      unitRef="usd">-196144000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if42cabb4bff4485b9f877d871f462439_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjMtMTYtMS0xLTYyMjQ_58f60ad4-e2a2-470e-b267-4bd20d17bb01"
      unitRef="usd">330719000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i5a762e71bb2644b398a0cbd977ec94b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjQtNi0xLTEtNjIyNA_ef2d392c-a849-48ab-acab-2818b3fe8242"
      unitRef="shares">2616000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i5a762e71bb2644b398a0cbd977ec94b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjQtOC0xLTEtNjIyNA_8ea3cf04-ba35-4f47-81b4-ffe62c566307"
      unitRef="usd">3000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="id8147e6407f248a2b44bab041a474bb2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjQtMTAtMS0xLTYyMjQ_55a218e3-30f1-4f08-8a9a-2b89e599dfc7"
      unitRef="usd">11835000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjQtMTYtMS0xLTYyMjQ_1009a67f-295c-468d-8746-c3b58dd4f9c6"
      unitRef="usd">11838000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <ngm:StockIssuedDuringPeriodSharesIssuanceOfUnderOpenMarketAgreement
      contextRef="i5a762e71bb2644b398a0cbd977ec94b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjUtNi0xLTEtNjIyNA_2731026f-10ae-4dc3-b29b-b678e72618ea"
      unitRef="shares">810000</ngm:StockIssuedDuringPeriodSharesIssuanceOfUnderOpenMarketAgreement>
    <ngm:StockIssuedDuringPeriodValueIssuanceOfUnderOpenMarketAgreement
      contextRef="i5a762e71bb2644b398a0cbd977ec94b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjUtOC0xLTEtNjIyNA_7b3f8516-3afd-4723-8118-dd5f9fcde0e9"
      unitRef="usd">1000</ngm:StockIssuedDuringPeriodValueIssuanceOfUnderOpenMarketAgreement>
    <ngm:StockIssuedDuringPeriodValueIssuanceOfUnderOpenMarketAgreement
      contextRef="id8147e6407f248a2b44bab041a474bb2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjUtMTAtMS0xLTYyMjQ_fc9c9c40-d628-4fe0-a1a3-9e7ec92d116b"
      unitRef="usd">21329000</ngm:StockIssuedDuringPeriodValueIssuanceOfUnderOpenMarketAgreement>
    <ngm:StockIssuedDuringPeriodValueIssuanceOfUnderOpenMarketAgreement
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjUtMTYtMS0xLTYyMjQ_76918a46-7f6d-4061-bc06-16c0519b0deb"
      unitRef="usd">21330000</ngm:StockIssuedDuringPeriodValueIssuanceOfUnderOpenMarketAgreement>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i5a762e71bb2644b398a0cbd977ec94b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjYtNi0xLTEtNjIyNA_adaa9571-1e65-485b-aa27-9cbfc68069dc"
      unitRef="shares">197000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="id8147e6407f248a2b44bab041a474bb2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjYtMTAtMS0xLTYyMjQ_43c10804-c19c-463a-aeb5-cd5789969194"
      unitRef="usd">2370000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjYtMTYtMS0xLTYyMjQ_3f43e353-f336-4672-bd94-16b1d8e8440e"
      unitRef="usd">2370000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <ngm:StockIssuedDuringPeriodSharesVestingOfEarlyExercisedStockOptions
      contextRef="i5a762e71bb2644b398a0cbd977ec94b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjctNi0xLTEtNjIyNA_b69cc2db-12b7-41f7-af65-7ab801b9186a"
      unitRef="shares">68000</ngm:StockIssuedDuringPeriodSharesVestingOfEarlyExercisedStockOptions>
    <ngm:StockIssuedDuringPeriodValueVestingOfEarlyExercisedStockOptions
      contextRef="id8147e6407f248a2b44bab041a474bb2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjctMTAtMS0xLTYyMjQ_2cd4109d-74bc-4979-ab3a-d050f04f5df0"
      unitRef="usd">524000</ngm:StockIssuedDuringPeriodValueVestingOfEarlyExercisedStockOptions>
    <ngm:StockIssuedDuringPeriodValueVestingOfEarlyExercisedStockOptions
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjctMTYtMS0xLTYyMjQ_a361ef85-3808-4618-9d1e-d61e1814ff60"
      unitRef="usd">524000</ngm:StockIssuedDuringPeriodValueVestingOfEarlyExercisedStockOptions>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan
      contextRef="i5a762e71bb2644b398a0cbd977ec94b6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjgtNi0xLTEtNjIyNA_17e83ae8-fa5b-47d5-9391-fd657082b6ba"
      unitRef="shares">6000</us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan
      contextRef="id8147e6407f248a2b44bab041a474bb2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjgtMTAtMS0xLTYyMjQ_265e5f5d-35b9-48ae-bc4d-c0314de33b2d"
      unitRef="usd">119000</us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjgtMTYtMS0xLTYyMjQ_3840340d-dfdb-4e85-8cdf-1d3cd53fda38"
      unitRef="usd">119000</us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="id8147e6407f248a2b44bab041a474bb2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjktMTAtMS0xLTYyMjQ_51819b3f-20e8-4a9a-9421-5d18766b338f"
      unitRef="usd">15651000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjktMTYtMS0xLTYyMjQ_6af29cbe-b6f5-4f7a-a24d-ee842d7786c5"
      unitRef="usd">15651000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i8052d97a04f64a48a307f949de77158a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzAtMTItMS0xLTYyMjQ_82b4a543-1b16-4d49-afc8-58d0eac8f003"
      unitRef="usd">-21000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzAtMTYtMS0xLTYyMjQ_63b6c51a-302e-42f3-9924-2fd26a3f2ff5"
      unitRef="usd">-21000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="i968105b5265c411b944a123539dc52c8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzEtMTQtMS0xLTYyMjQ_2d0a27ed-9aa1-4268-bb4a-cdcca8d31df5"
      unitRef="usd">-102487000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzEtMTYtMS0xLTYyMjQ_a626f71f-b472-4c20-bd19-2eee97b7046d"
      unitRef="usd">-102487000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="i0cf3c25041a84ac097054e3e91bf5d7e_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzItNi0xLTEtNjIyNA_70f2bc19-55d9-4877-98ed-6cf37efee125"
      unitRef="shares">70583000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i0cf3c25041a84ac097054e3e91bf5d7e_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzItOC0xLTEtNjIyNA_5955c7d9-a7ba-496b-8df0-08e8733c254b"
      unitRef="usd">71000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i1af9c0db015b4112a1a755f1c795b7e1_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzItMTAtMS0xLTYyMjQ_760a311a-20ab-47c7-b8f9-71371a8e462e"
      unitRef="usd">578599000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i37156abacd6d48a1a546e5660e1f056d_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzItMTItMS0xLTYyMjQ_60ec5998-bd60-4061-917f-91a055d8ba3e"
      unitRef="usd">4000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="icb62c3185b234bf2a06ca56f8d6b4e0e_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzItMTQtMS0xLTYyMjQ_bea64c4f-f02f-45e8-bafb-7e3f8f5bcc1d"
      unitRef="usd">-298631000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzItMTYtMS0xLTYyMjQ_a040bff6-27c1-471c-b1d6-174dfe211627"
      unitRef="usd">280043000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="ib93b12b3aed641939d0f1f9d0491121b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjUtNS0xLTEtMTI1MTc_e38d3c2d-2298-4f24-87a3-682f600321a9"
      unitRef="shares">5324000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="ib93b12b3aed641939d0f1f9d0491121b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjUtNy0xLTEtMTI1MTc_44bc2d81-8685-4e04-909c-e34f4c1a9c4c"
      unitRef="usd">5000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="i2928310eed2640f99f1850926c38a082_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjUtOS0xLTEtMTI1MTc_008793e3-6d72-45e0-8dc9-2fcb023bcd47"
      unitRef="usd">134575000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjUtMTUtMS0xLTEyNTE3_83ec270d-c818-4dd2-b43e-d7772826fa7c"
      unitRef="usd">134580000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="ib93b12b3aed641939d0f1f9d0491121b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjYtNS0xLTEtMTU0NTA_9e974e8e-c013-427d-9ec3-9946b807c7a1"
      unitRef="shares">1845000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ib93b12b3aed641939d0f1f9d0491121b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjYtNy0xLTEtMTU0NTA_7eb434e6-8dd7-4971-95b8-5f3fad79dafb"
      unitRef="usd">2000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i2928310eed2640f99f1850926c38a082_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjYtOS0xLTEtMTU0NTA_550a3101-3787-4f66-8366-2c488db33f1a"
      unitRef="usd">12360000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjYtMTUtMS0xLTEyNTE3_2ffe81a0-a6c5-47ff-924b-1a3e0f0355fe"
      unitRef="usd">12362000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="ib93b12b3aed641939d0f1f9d0491121b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjctNS0xLTEtMTU0NTA_4cdc45c1-fca6-4198-a37e-2a9db60c4b89"
      unitRef="shares">193000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i2928310eed2640f99f1850926c38a082_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjctOS0xLTEtMTU0NTA_7bf1f3d7-e54a-4e4a-8929-4501c8ff680d"
      unitRef="usd">2519000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjctMTUtMS0xLTEyNTE3_db9729be-82fd-4d45-8331-7289d35bf6e9"
      unitRef="usd">2519000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <ngm:StockIssuedDuringPeriodSharesIssuanceOfUnderOpenMarketAgreement
      contextRef="ib93b12b3aed641939d0f1f9d0491121b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjgtNS0xLTEtMTI1MTc_9a86ab41-be62-47cd-9626-ccbe014aab5b"
      unitRef="shares">7000</ngm:StockIssuedDuringPeriodSharesIssuanceOfUnderOpenMarketAgreement>
    <ngm:StockIssuedDuringPeriodValueIssuanceOfUnderOpenMarketAgreement
      contextRef="ib93b12b3aed641939d0f1f9d0491121b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjgtNy0xLTEtMTI1MTc_88397e55-928e-4758-8060-7a6295ba3b4d"
      unitRef="usd">0</ngm:StockIssuedDuringPeriodValueIssuanceOfUnderOpenMarketAgreement>
    <ngm:StockIssuedDuringPeriodValueIssuanceOfUnderOpenMarketAgreement
      contextRef="i2928310eed2640f99f1850926c38a082_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjgtOS0xLTEtMTI1MTc_4de75efe-ece0-45ec-a266-6e03567f2757"
      unitRef="usd">196000</ngm:StockIssuedDuringPeriodValueIssuanceOfUnderOpenMarketAgreement>
    <ngm:StockIssuedDuringPeriodValueIssuanceOfUnderOpenMarketAgreement
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjgtMTUtMS0xLTEyNTE3_8992d931-3846-4e78-ad27-98cead3b8613"
      unitRef="usd">196000</ngm:StockIssuedDuringPeriodValueIssuanceOfUnderOpenMarketAgreement>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan
      contextRef="ib93b12b3aed641939d0f1f9d0491121b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjktNS0xLTEtMTI1MTc_45772773-630b-446e-bc26-d3cccecd05fa"
      unitRef="shares">4000</us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan
      contextRef="i2928310eed2640f99f1850926c38a082_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjktOS0xLTEtMTI1MTc_8e1c8e20-0181-40d1-a303-4b40ab22e62f"
      unitRef="usd">125000</us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMjktMTUtMS0xLTEyNTE3_51bf148c-088a-45c1-83d8-b39d77ca064b"
      unitRef="usd">125000</us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan>
    <ngm:StockIssuedDuringPeriodSharesVestingOfEarlyExercisedStockOptions
      contextRef="ib93b12b3aed641939d0f1f9d0491121b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzAtNS0xLTEtMTU0NTA_2d857d25-38f6-4d1d-b30c-5bea1e13c3c0"
      unitRef="shares">6000</ngm:StockIssuedDuringPeriodSharesVestingOfEarlyExercisedStockOptions>
    <ngm:StockIssuedDuringPeriodValueVestingOfEarlyExercisedStockOptions
      contextRef="i2928310eed2640f99f1850926c38a082_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzAtOS0xLTEtMTU0NTA_7db2ef41-ddb8-4540-9d16-abd146721841"
      unitRef="usd">48000</ngm:StockIssuedDuringPeriodValueVestingOfEarlyExercisedStockOptions>
    <ngm:StockIssuedDuringPeriodValueVestingOfEarlyExercisedStockOptions
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzAtMTUtMS0xLTEyNTE3_e71354cc-a6f1-442c-a622-c8069e565359"
      unitRef="usd">48000</ngm:StockIssuedDuringPeriodValueVestingOfEarlyExercisedStockOptions>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i2928310eed2640f99f1850926c38a082_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzEtOS0xLTEtMTU0NTA_7ee73bb8-7a8a-4604-9dac-12329f076159"
      unitRef="usd">26242000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzEtMTUtMS0xLTEyNTE3_81c5a44d-936d-4007-9a16-f734d0b188c1"
      unitRef="usd">26242000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i36c02f057ba2493680627ec19998f481_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzItMTEtMS0xLTEyNTE3_c63fab68-8293-4051-a5ad-4a3944c27c91"
      unitRef="usd">-133000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzItMTUtMS0xLTEyNTE3_90f12c4e-fd4c-421b-a1b5-a6ebae4a4e94"
      unitRef="usd">-133000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="idab3bc87dfe1423bb55c1080d8d90681_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzMtMTMtMS0xLTEyNTE3_fe5a0eb0-17ec-4b24-ba8f-ae7bfa8ff176"
      unitRef="usd">-120335000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzMtMTUtMS0xLTEyNTE3_bc94a316-759c-47ab-a06a-500986bda0b4"
      unitRef="usd">-120335000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="i2253536a269447ada2d4dad54ac9f550_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzQtNS0xLTEtMTI1MTc_5a841325-fdc3-4e2e-a735-f9798d6b7b04"
      unitRef="shares">77962000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i2253536a269447ada2d4dad54ac9f550_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzQtNy0xLTEtMTI1MTc_fe765f1d-2be4-49fb-9a08-9d00e3bc12da"
      unitRef="usd">78000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia233f24b67c940619f59d27b67a026f2_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzQtOS0xLTEtMTI1MTc_1c60a083-0d3b-40b4-b7f5-e1d8a5ba548b"
      unitRef="usd">754664000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iedf4974e9e0b4600bc4b73dce09c838a_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzQtMTEtMS0xLTEyNTE3_d6b19019-c8d2-4cdb-83cf-96009fdded31"
      unitRef="usd">-129000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i2684d94de60343b2b12ec8bd1c90d500_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzQtMTMtMS0xLTEyNTE3_f413dbe9-f09a-434b-a976-ac2fa053e104"
      unitRef="usd">-418966000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV85Ny9mcmFnOmQ2ODNkNjgwYzU2ZjQwOTI5NTliMDM5MzZkNGU5MTI1L3RhYmxlOjU4N2Q5YWYwN2ZiNzQ1Yjk5NWY0MGU2MTg1NjJjYjBiL3RhYmxlcmFuZ2U6NTg3ZDlhZjA3ZmI3NDViOTk1ZjQwZTYxODU2MmNiMGJfMzQtMTUtMS0xLTEyNTE3_36285bd7-db56-4349-81c0-649b741dd507"
      unitRef="usd">335647000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMtMS0xLTEtNjIyNA_8c61c5c8-9743-4ceb-a636-519339c4815e"
      unitRef="usd">-120335000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMtMy0xLTEtNjIyNA_af23e77d-9d42-45f9-a773-2179b2aa6342"
      unitRef="usd">-102487000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMtNS0xLTEtNjIyNA_3a660efe-f27c-465d-8f6b-c26a2e6a378f"
      unitRef="usd">-42795000</us-gaap:ProfitLoss>
    <us-gaap:ShareBasedCompensation
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzUtMS0xLTEtMTI1NDg_bdc57083-3544-4b11-b82f-3a1e50ef79e9"
      unitRef="usd">26242000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzUtMy0xLTEtMTI1NDg_1a927b50-cb38-409a-b084-fac8c7fa52f3"
      unitRef="usd">15651000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzUtNS0xLTEtMTI1NDg_8b80f612-53d8-4eec-8322-2e34294f4fca"
      unitRef="usd">12862000</us-gaap:ShareBasedCompensation>
    <ngm:IncreaseDecreaseInDueFromRelatedPartiesContractAssetsNoncash
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzYtMS0xLTEtMTI2OTM_c2327bc6-63e7-47c0-a055-719dfe47188c"
      unitRef="usd">-4600000</ngm:IncreaseDecreaseInDueFromRelatedPartiesContractAssetsNoncash>
    <ngm:IncreaseDecreaseInDueFromRelatedPartiesContractAssetsNoncash
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzYtMy0xLTEtMTI2OTM_ac1e8806-d704-4e63-bf6b-7fe1e25ca011"
      unitRef="usd">0</ngm:IncreaseDecreaseInDueFromRelatedPartiesContractAssetsNoncash>
    <ngm:IncreaseDecreaseInDueFromRelatedPartiesContractAssetsNoncash
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzYtNS0xLTEtMTI2OTM_3636b606-9d78-4d22-917b-5ea85b055000"
      unitRef="usd">0</ngm:IncreaseDecreaseInDueFromRelatedPartiesContractAssetsNoncash>
    <us-gaap:Depreciation
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzUtMS0xLTEtNjIyNA_2ec5b8ec-adf5-471a-a07b-75cdc5a4d7cb"
      unitRef="usd">6089000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzUtMy0xLTEtNjIyNA_fa6ddd76-82db-4c76-923a-125c41726181"
      unitRef="usd">6555000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzUtNS0xLTEtNjIyNA_3bfd4884-2789-4d7d-b735-c684565493ec"
      unitRef="usd">7605000</us-gaap:Depreciation>
    <us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzYtMS0xLTEtNjIyNA_5e5ca407-f544-4f4c-bbd9-630afb988af0"
      unitRef="usd">-3514000</us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments>
    <us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzYtMy0xLTEtNjIyNA_0132cc8c-c0e0-4c90-8276-014b213dbb6f"
      unitRef="usd">128000</us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments>
    <us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzYtNS0xLTEtNjIyNA_773de5ba-3540-4a87-acbb-33212a7512eb"
      unitRef="usd">1123000</us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzktMS0xLTEtMTUxOTA_c5a80d89-dfac-4fa4-82aa-83e2ed4691ec"
      unitRef="usd">1810000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzktMy0xLTEtMTUxOTA_cc7a6ae1-dbd6-4d77-a8a7-a9da2de6b3eb"
      unitRef="usd">0</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzktNS0xLTEtMTUxOTA_4408ca98-425f-4df8-a593-4bdcf5df6ead"
      unitRef="usd">0</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzgtMS0xLTEtNjIyNA_bcebfdfe-f31f-43c5-ada0-a34109f55799"
      unitRef="usd">-643000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzgtMy0xLTEtNjIyNA_d964f786-69df-4724-92c3-cf207148a4c1"
      unitRef="usd">-613000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzgtNS0xLTEtNjIyNA_7c8c8dcc-0405-4518-b3c3-6d815eec8e2b"
      unitRef="usd">-217000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsReceivableRelatedParties
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzEwLTEtMS0xLTYyMjQ_09e64f1b-2127-48df-95d2-5d5f39ee088f"
      unitRef="usd">4612000</us-gaap:IncreaseDecreaseInAccountsReceivableRelatedParties>
    <us-gaap:IncreaseDecreaseInAccountsReceivableRelatedParties
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzEwLTMtMS0xLTYyMjQ_14d2e49f-200e-4a9a-907b-789f1be6cd68"
      unitRef="usd">-4873000</us-gaap:IncreaseDecreaseInAccountsReceivableRelatedParties>
    <us-gaap:IncreaseDecreaseInAccountsReceivableRelatedParties
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzEwLTUtMS0xLTYyMjQ_88ec2b1c-bb99-47b8-b173-f7642514d52c"
      unitRef="usd">1537000</us-gaap:IncreaseDecreaseInAccountsReceivableRelatedParties>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzExLTEtMS0xLTYyMjQ_4c87fb20-7538-4765-af9d-694c8afb3c1a"
      unitRef="usd">-1500000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzExLTMtMS0xLTYyMjQ_cddd5e48-4bc8-4677-bff5-35bb81800a40"
      unitRef="usd">6100000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzExLTUtMS0xLTYyMjQ_6871683e-6e70-4ea4-b75c-6a62bd1cbd9d"
      unitRef="usd">0</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzEyLTEtMS0xLTYyMjQ_b2baad6d-e0d1-4876-87fe-d4ca70b4c573"
      unitRef="usd">4145000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzEyLTMtMS0xLTYyMjQ_51893851-6e3a-4abe-bc01-0c0a9a29ac5f"
      unitRef="usd">1864000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzEyLTUtMS0xLTYyMjQ_3f5559ce-f1f3-4de7-8026-d66a539a4d38"
      unitRef="usd">1988000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzEzLTEtMS0xLTYyMjQ_0d91d7c2-5077-4006-877c-519d57285026"
      unitRef="usd">-4417000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzEzLTMtMS0xLTYyMjQ_6d0b9996-3db5-4051-8790-52d401c07de7"
      unitRef="usd">910000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzEzLTUtMS0xLTYyMjQ_258dab86-cfca-48d5-a1f2-51ac73cbb1ff"
      unitRef="usd">3642000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE0LTEtMS0xLTYyMjQ_d7223d7a-2f81-490f-a5e2-40f597f56b9f"
      unitRef="usd">2893000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE0LTMtMS0xLTYyMjQ_6f8493dd-445a-4bec-b012-845c9808b5e0"
      unitRef="usd">6182000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE0LTUtMS0xLTYyMjQ_d52764fb-8baf-418d-8f8e-eaead264581c"
      unitRef="usd">8877000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE3LTEtMS0xLTE1MjAx_3017f994-e49f-4614-965a-78d553dcdbae"
      unitRef="usd">-4785000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE3LTMtMS0xLTE1MjAx_85ffd59f-4b6d-4796-8915-67af0feb7fed"
      unitRef="usd">0</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE3LTUtMS0xLTE1MjAx_95570a05-9ca2-40db-a43c-c872d148e19e"
      unitRef="usd">0</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInPrepaidRent
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE1LTEtMS0xLTYyMjQ_8b6bb4ff-b150-40fb-919c-ee8dcb622a1b"
      unitRef="usd">0</us-gaap:IncreaseDecreaseInPrepaidRent>
    <us-gaap:IncreaseDecreaseInPrepaidRent
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE1LTMtMS0xLTYyMjQ_af82d91e-9036-48a7-97b9-8b047a4a0e9f"
      unitRef="usd">2829000</us-gaap:IncreaseDecreaseInPrepaidRent>
    <us-gaap:IncreaseDecreaseInPrepaidRent
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE1LTUtMS0xLTYyMjQ_e14f1228-dc8c-4402-b897-1da781022fed"
      unitRef="usd">2683000</us-gaap:IncreaseDecreaseInPrepaidRent>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE2LTEtMS0xLTYyMjQ_e8099325-6df8-46ad-9e66-8a43371f7387"
      unitRef="usd">17774000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE2LTMtMS0xLTYyMjQ_0e9c2b58-529c-4413-9812-df159311233a"
      unitRef="usd">-4872000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE2LTUtMS0xLTYyMjQ_577ae9ed-0e8c-4ed9-8eb0-75d16fcef2a0"
      unitRef="usd">-24251000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE3LTEtMS0xLTYyMjQ_571e0a6c-3928-4351-96bf-b5c5aaa64337"
      unitRef="usd">-73229000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE3LTMtMS0xLTYyMjQ_8b1b9ca4-925c-4706-b275-e93cd2929fe7"
      unitRef="usd">-83496000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE3LTUtMS0xLTYyMjQ_e1ef55ab-2682-4003-990c-fe910b9718f2"
      unitRef="usd">-41174000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE5LTEtMS0xLTYyMjQ_53b02597-9506-4402-833e-4c625f35d6ab"
      unitRef="usd">293466000</us-gaap:PaymentsToAcquireMarketableSecurities>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE5LTMtMS0xLTYyMjQ_677df0e7-fde1-4d50-81e4-c0e9fbeaba68"
      unitRef="usd">177655000</us-gaap:PaymentsToAcquireMarketableSecurities>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzE5LTUtMS0xLTYyMjQ_9ad0b05c-aecc-42fc-a2fb-8ea481892402"
      unitRef="usd">134306000</us-gaap:PaymentsToAcquireMarketableSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzIwLTEtMS0xLTYyMjQ_6946d82a-2eac-46d7-886b-37b0e7011bfb"
      unitRef="usd">223500000</us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzIwLTMtMS0xLTYyMjQ_a8f1f251-588f-4cd9-8532-99f608443254"
      unitRef="usd">128536000</us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzIwLTUtMS0xLTYyMjQ_7c097727-83db-4196-9493-b1488fdd3fd0"
      unitRef="usd">186518000</us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities>
    <us-gaap:PaymentsToAcquireMachineryAndEquipment
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzIxLTEtMS0xLTYyMjQ_b3ddb6e5-4cab-43e6-bb10-576562dea96c"
      unitRef="usd">1684000</us-gaap:PaymentsToAcquireMachineryAndEquipment>
    <us-gaap:PaymentsToAcquireMachineryAndEquipment
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzIxLTMtMS0xLTYyMjQ_5ee99643-a472-463c-a7e6-ab4cedac641a"
      unitRef="usd">1879000</us-gaap:PaymentsToAcquireMachineryAndEquipment>
    <us-gaap:PaymentsToAcquireMachineryAndEquipment
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzIxLTUtMS0xLTYyMjQ_59bdf29f-2259-46db-821e-e9fd056c269c"
      unitRef="usd">3489000</us-gaap:PaymentsToAcquireMachineryAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzIyLTEtMS0xLTYyMjQ_2a4c62ed-4f50-4510-a46c-1c129d14a257"
      unitRef="usd">-71650000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzIyLTMtMS0xLTYyMjQ_12e07b21-30f0-4d9a-86be-213b39feb19b"
      unitRef="usd">-50998000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzIyLTUtMS0xLTYyMjQ_a641b46d-0074-4da3-ac5b-582d48366837"
      unitRef="usd">48723000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI1LTEtMS0xLTEzMjEy_77af388f-00dd-488e-9789-ee87b74ca87c"
      unitRef="usd">134580000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI1LTMtMS0xLTEzMjEy_5cef82f8-247f-4b97-b68a-bbea203993b0"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI1LTUtMS0xLTEzMjEy_8de9fe88-1845-4517-8bc9-a160aa0e3b40"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceInitialPublicOffering
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI0LTEtMS0xLTYyMjQ_c423d7bf-50f8-49a7-b334-0858ff0172b6"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceInitialPublicOffering>
    <us-gaap:ProceedsFromIssuanceInitialPublicOffering
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI0LTMtMS0xLTYyMjQ_c49611eb-0b7c-48c3-bc06-d7aa963544c1"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceInitialPublicOffering>
    <us-gaap:ProceedsFromIssuanceInitialPublicOffering
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI0LTUtMS0xLTYyMjQ_c1b06b20-04da-4a7a-bcbe-c2a8dfcabcba"
      unitRef="usd">109959000</us-gaap:ProceedsFromIssuanceInitialPublicOffering>
    <us-gaap:ProceedsFromIssuanceOfPrivatePlacement
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI1LTEtMS0xLTYyMjQ_ceb9aee1-a7f4-411f-9db7-b74bef35fa8f"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfPrivatePlacement>
    <us-gaap:ProceedsFromIssuanceOfPrivatePlacement
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI1LTMtMS0xLTYyMjQ_e7663a1d-79a8-41d1-81d2-cabbf7c990c5"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfPrivatePlacement>
    <us-gaap:ProceedsFromIssuanceOfPrivatePlacement
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI1LTUtMS0xLTYyMjQ_b9ad9fb7-3344-4868-876d-80360d25c7da"
      unitRef="usd">65947000</us-gaap:ProceedsFromIssuanceOfPrivatePlacement>
    <ngm:ProceedsFromIssuanceOpenMarketAgreement
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI2LTEtMS0xLTYyMjQ_7b605fd5-fc56-4a3d-b12a-6ecf8fb9ebad"
      unitRef="usd">196000</ngm:ProceedsFromIssuanceOpenMarketAgreement>
    <ngm:ProceedsFromIssuanceOpenMarketAgreement
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI2LTMtMS0xLTYyMjQ_00c8cee7-7815-42cc-9acf-f9fadedd93d4"
      unitRef="usd">21943000</ngm:ProceedsFromIssuanceOpenMarketAgreement>
    <ngm:ProceedsFromIssuanceOpenMarketAgreement
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI2LTUtMS0xLTYyMjQ_d5f6e9b2-a4b9-4805-b6ab-b509b86f7433"
      unitRef="usd">0</ngm:ProceedsFromIssuanceOpenMarketAgreement>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI3LTEtMS0xLTYyMjQ_2c74d79f-d9db-46f0-ac37-89d704716036"
      unitRef="usd">12362000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI3LTMtMS0xLTYyMjQ_b7922a67-b8d6-4ba8-b6d0-4956bff151e6"
      unitRef="usd">11838000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI3LTUtMS0xLTYyMjQ_869563ee-302d-4704-a326-e889bc4411a8"
      unitRef="usd">3575000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI4LTEtMS0xLTYyMjQ_5e4c65a9-9d1b-4c01-add1-e21334e000ef"
      unitRef="usd">2519000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI4LTMtMS0xLTYyMjQ_6722aa87-d630-40ec-b7e7-ed05786d211a"
      unitRef="usd">2370000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzI4LTUtMS0xLTYyMjQ_db6f1c30-5967-4175-a087-86d3f8645c03"
      unitRef="usd">1270000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMwLTEtMS0xLTYyMjQ_033d17d0-aa3c-4abb-b19d-74499cca30fb"
      unitRef="usd">0</us-gaap:PaymentsOfStockIssuanceCosts>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMwLTMtMS0xLTYyMjQ_b7a67fa4-7396-4656-9c5f-cf40ab9e61e2"
      unitRef="usd">613000</us-gaap:PaymentsOfStockIssuanceCosts>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMwLTUtMS0xLTYyMjQ_bdd24752-8a35-4304-bfe9-f822f2a3cbd4"
      unitRef="usd">0</us-gaap:PaymentsOfStockIssuanceCosts>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMxLTEtMS0xLTYyMjQ_e81e34a3-e967-4d93-b3b5-d2a5ef89cfc4"
      unitRef="usd">149657000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMxLTMtMS0xLTYyMjQ_b0090a54-f0b8-4ab8-a1c6-73d4045d52d8"
      unitRef="usd">35538000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMxLTUtMS0xLTYyMjQ_cae488c6-6305-4c74-8484-927e8a2ea2b4"
      unitRef="usd">180751000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMyLTEtMS0xLTYyMjQ_2a78f94b-3a0b-494a-8bd3-711499dbdcb6"
      unitRef="usd">4778000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMyLTMtMS0xLTYyMjQ_cc185b95-6fff-487e-a594-f4f339ada679"
      unitRef="usd">-98956000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMyLTUtMS0xLTYyMjQ_bb21207f-dca4-4855-9893-72f336f6d1d8"
      unitRef="usd">188300000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMzLTEtMS0xLTYyMjQ_fa882e99-5312-4ac9-b646-60ebf74c5d92"
      unitRef="usd">148516000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="if42cabb4bff4485b9f877d871f462439_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMzLTMtMS0xLTYyMjQ_7cdc06e6-ec7f-43dc-b2dd-29d4dc766756"
      unitRef="usd">247472000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i87ab7eb7f7384aa7bbb6951273454afc_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzMzLTUtMS0xLTYyMjQ_eca9736d-6ce6-490f-8bdc-7ffbc888ca73"
      unitRef="usd">59172000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM0LTEtMS0xLTYyMjQ_24fba504-2122-4cc6-b48d-5f8f05f2b0d7"
      unitRef="usd">153294000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM0LTMtMS0xLTYyMjQ_f21e2363-b123-4c29-b650-d1fe30288504"
      unitRef="usd">148516000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="if42cabb4bff4485b9f877d871f462439_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM0LTUtMS0xLTYyMjQ_a4fb2fdd-509a-44d3-b1d2-c4591ec0d57a"
      unitRef="usd">247472000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM5LTEtMS0xLTE1MjEy_28a15851-33dd-4a4c-9081-5bfe0cf66f5e"
      unitRef="usd">5855000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM5LTMtMS0xLTE1MjEy_63628946-f33c-47e5-9cc5-8bc630f2dbb9"
      unitRef="usd">0</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM5LTUtMS0xLTE1MjEy_dfff35ca-a3f6-44f3-9521-33bd6def89b0"
      unitRef="usd">0</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <ngm:NetExerciseOfConvertiblePreferredStockWarrantToSeriesAPreferredStock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM2LTEtMS0xLTYyMjQ_4291b7c3-6da2-4b77-a61d-f6a67b1775d2"
      unitRef="usd">0</ngm:NetExerciseOfConvertiblePreferredStockWarrantToSeriesAPreferredStock>
    <ngm:NetExerciseOfConvertiblePreferredStockWarrantToSeriesAPreferredStock
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM2LTMtMS0xLTYyMjQ_5ed69606-8905-4226-af33-9a365c4a41df"
      unitRef="usd">0</ngm:NetExerciseOfConvertiblePreferredStockWarrantToSeriesAPreferredStock>
    <ngm:NetExerciseOfConvertiblePreferredStockWarrantToSeriesAPreferredStock
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM2LTUtMS0xLTYyMjQ_53f6fa3b-99f0-4b32-97d6-884cc1a3c376"
      unitRef="usd">198000</ngm:NetExerciseOfConvertiblePreferredStockWarrantToSeriesAPreferredStock>
    <ngm:VestingOfCommonStockFromEarlyExercises
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM3LTEtMS0xLTYyMjQ_9fe4bdda-78a3-454c-a028-b46cb70d8877"
      unitRef="usd">48000</ngm:VestingOfCommonStockFromEarlyExercises>
    <ngm:VestingOfCommonStockFromEarlyExercises
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM3LTMtMS0xLTYyMjQ_eed06812-8a6f-420c-94d5-a39733c2ec00"
      unitRef="usd">524000</ngm:VestingOfCommonStockFromEarlyExercises>
    <ngm:VestingOfCommonStockFromEarlyExercises
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM3LTUtMS0xLTYyMjQ_55c7378d-afbc-4a3f-8921-b860e3b3cef5"
      unitRef="usd">993000</ngm:VestingOfCommonStockFromEarlyExercises>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM4LTEtMS0xLTYyMjQ_85445b89-cb34-45fc-b687-52aeb2d3b9b7"
      unitRef="usd">0</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM4LTMtMS0xLTYyMjQ_33740652-2527-41b2-9a96-686220eed5e1"
      unitRef="usd">20000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM4LTUtMS0xLTYyMjQ_3ec42e1f-5ea8-46cd-9d1d-26763bb94b94"
      unitRef="usd">305000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <ngm:DeferredOfferingCostsAccruedButNotYetPaid
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM5LTEtMS0xLTYyMjQ_b9bdee2c-a56d-4c8a-8e18-be1c90fad076"
      unitRef="usd">0</ngm:DeferredOfferingCostsAccruedButNotYetPaid>
    <ngm:DeferredOfferingCostsAccruedButNotYetPaid
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM5LTMtMS0xLTYyMjQ_477435b1-673a-4af5-90f5-10f04fe5e72c"
      unitRef="usd">228000</ngm:DeferredOfferingCostsAccruedButNotYetPaid>
    <ngm:DeferredOfferingCostsAccruedButNotYetPaid
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDMvZnJhZzpjOWVjNzU0NWU5ZjM0OGY4OWUxZWQ1NzE4ZjczYmYzYy90YWJsZTpmYTVmNzUwYTQyODU0ODIzYmVjZTk4YWZiOGFiNTc0My90YWJsZXJhbmdlOmZhNWY3NTBhNDI4NTQ4MjNiZWNlOThhZmI4YWI1NzQzXzM5LTUtMS0xLTYyMjQ_9d20f3ec-d9b3-44e0-a3c1-20c94a3d1cd1"
      unitRef="usd">0</ngm:DeferredOfferingCostsAccruedButNotYetPaid>
    <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMDkvZnJhZzo0OWY3YWI1ZjQ5ZDY0M2QwODIzZGIzZjM4NDIwMzdkZC90ZXh0cmVnaW9uOjQ5ZjdhYjVmNDlkNjQzZDA4MjNkYjNmMzg0MjAzN2RkXzMwNjc_537911af-2369-4f70-9ce5-bedb49b1b4a0">Organization and Description of BusinessNGM Biopharmaceuticals, Inc. and its wholly-owned subsidiary, NGM Biopharmaceuticals Australia Pty Ltd., collectively referred to as the Company, is focused on discovering and developing novel, potentially life-changing medicines based on scientific understanding of key biological pathways underlying cancer, retinal diseases and liver and metabolic diseases. The Company&#x2019;s robust portfolio of product candidates range from early discovery to Phase 2b development and include NGM707, NGM831, NGM438, NGM120, NGM621, aldafermin and MK-3655. The Company has additional undisclosed programs that are in various stages of development ranging from functional validation to preclinical development.The Company was incorporated in Delaware in December 2007 and commenced operations in 2008. The Company's headquarters are located at 333 Oyster Point Blvd., South San Francisco, California 94080.</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDE3_65e59cfc-f8b8-4fe7-b4f1-6f03dc1db08a">Summary of Significant Accounting Policies&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Basis of Presentation and Principles of Consolidation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles, or U.S. GAAP, and include the consolidated accounts of NGM Biopharmaceuticals, Inc. and its wholly-owned foreign subsidiary in Australia, NGM Biopharmaceuticals Australia Pty Ltd. All intercompany balances and transactions have been eliminated upon consolidation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of consolidated financial statements in conformity with U.S. GAAP requires management to make judgments, assumptions and estimates that affect the reported amounts of assets, liabilities, revenues and expenses. Specific accounts that require management estimates include, but are not limited to, the valuation of common stock and the associated stock-based compensation expense, contract manufacturing accruals, clinical trial accruals and revenue recognition in accordance with Accounting Standards Update, or ASU, 2014-09, Revenue from Contracts with Customers (Topic 606), or ASC 606. Management bases its estimates on historical experience and on various other assumptions that are believed to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying value of assets and liabilities that are not readily apparent from other sources. Actual results could differ materially from those estimates, and to the extent that there are differences between management's estimates and actual results, the Company's future financial statement presentation, financial condition, results of operations and cash flows may be affected.&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Sources and Uses of Liquidity&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Since inception, the Company has incurred net losses and negative cash flow from operations. During the years ended December&#160;31, 2021, 2020 and 2019, the Company incurred net losses of $120.3 million, $102.5 million and $42.8 million, respectively. As of December&#160;31, 2021, the Company had an accumulated deficit of $419.0 million.&#160;The Company expects its accumulated deficit will increase significantly over time and does not expect to experience positive cash flows from operations in the near future.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2021, the Company had $366.3 million of cash, cash equivalents and short-term marketable securities.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In June 2020, the Company entered into an Open Market Sale Agreement&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;SM&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, or the Sales Agreement, with Jefferies LLC. As of December&#160;31, 2021, $127.2&#160;million of the Company's common stock remained available to be sold under the Sales Agreement, subject to conditions specified in the Sales Agreement.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company believes its existing cash, cash equivalents and short-term marketable securities will be sufficient to fund its operations for a period of at least one year from the date of these consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;To fully implement the Company&#x2019;s business plan and fund its operations, the Company will need to raise significant additional capital through public or private equity or debt offerings (which may include potential net proceeds from future sales, if any, under the Sales Agreement), product collaborations, strategic alliances and licensing arrangements or a combination of the foregoing.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Fair Value of Financial Instruments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying amounts of cash and cash equivalents, the related party receivable from collaboration and other current assets and liabilities approximate their respective fair values due to their short-term nature.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Cash and Cash Equivalents&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash and cash equivalents are stated at fair value. Cash equivalents are securities with an original maturity of three months or less at the time of purchase. The Company limits its credit risk associated with cash and cash equivalents by placing its investments with a bank it believes is highly creditworthy and with highly rated money market funds. As of December&#160;31, 2021 and 2020, cash and cash equivalents consisted of bank deposits and investments in money market funds.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Marketable Securities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The appropriate classification of the Company&#x2019;s marketable securities is determined at the time of purchase and such designations are re-evaluated at each balance sheet date. All of the Company&#x2019;s securities are considered as available-for-sale and carried at estimated fair values and reported in cash equivalents and short-term marketable securities. Unrealized gains and losses on available-for-sale securities are excluded from net loss and reported in accumulated other comprehensive income (loss) as a separate component of stockholders&#x2019; equity. Interest income, net, includes interest, amortization of purchase premiums and accretion of purchase discounts, realized gains and losses on sales of securities and other-than-temporary declines in the fair value of securities, if any. The cost of securities sold is based on the specific identification method.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s investments are regularly reviewed for other-than-temporary declines in fair value. This review includes the consideration of the cause of the impairment, including the creditworthiness of the security issuers, the number of securities in an unrealized loss position, the severity and duration of the unrealized losses, whether the Company has the intent to sell the securities and whether it is more likely than not that the Company will be required to sell the securities before the recovery of their amortized cost basis. When the Company determines that the decline in fair value of an investment is below its carrying value and this decline is other-than-temporary, the Company reduces the carrying value of the security it holds and records a loss for the amount of such decline. As of December&#160;31, 2021, the Company did not record any impairment related to other-than-temporary declines in the fair value of securities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Restricted Cash&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s restricted cash balance represents collateral required under the Company&#x2019;s facility lease agreement and is classified as a non-current asset on the consolidated balance sheets, as the collateral will not be returned to the Company within twelve months from the date of these consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Concentration of Credit and Other Risks&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash, cash equivalents and marketable securities from the Company&#x2019;s available-for-sale and marketable securities portfolio potentially subject the Company to concentrations of credit risk. The Company is invested in money market funds and marketable securities through custodial relationships with major United States, or U.S., and Australian banks. Under its investment policy, the Company limits amounts invested in such securities by credit rating, maturity, industry group, investment type and issuer, except for securities issued by the U.S. government.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Related party receivables from collaborations are typically unsecured. Accordingly, the Company may be exposed to credit risk generally associated with its current amended and restated research collaboration, product development and license agreement, or the Amended Collaboration Agreement, with Merck Sharp &amp;amp; Dohme Corp., or Merck, and any future collaboration agreements with other collaboration partners. To date, the Company has not experienced any losses related to these receivables.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amounts recognized as revenue prior to the Company having an unconditional right (other than a right that is conditioned only on the passage of time) to receipt are recorded as contract assets in the Company's  consolidated balance sheets. Although the Company expects to have an unconditional right to receive such amounts, the Company may be exposed to the risk of not receiving the recorded amounts under its current collaboration agreement with Merck and any future collaboration agreements with other collaboration partners. To date, the Company has not experienced any losses related to contract assets.&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Merck accounted for 100% of the Company&#x2019;s revenue for the years ended December&#160;31, 2021, 2020 and 2019.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Property and Equipment, Net&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment is recorded at cost and consists of computer equipment, laboratory equipment and office furniture and leasehold improvements. Maintenance and repairs, and training on the use of equipment, are expensed as incurred. Costs that improve assets or extend their economic lives are capitalized. Depreciation is recognized using the straight-line method based on an estimated useful life of the asset, which is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.807%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:37.993%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Laboratory equipment and office furniture&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvement&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shorter&#160;of&#160;life&#160;of&#160;asset&#160;or&#160;lease&#160;term&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Effective January 1, 2021, the Company adopted Accounting Standards Update, or ASU, 2016-02, Leases (Topic 842), referred to as ASC 842. Under ASC 842, the Company determines if an arrangement is a lease at inception. Lease assets represent the Company's right to use an underlying asset for the lease term and lease liabilities represent the Company's obligation to make lease payments arising from the lease. Lease liabilities are measured at the lease commencement date as the present value of future minimum lease payments over the term of the lease. Lease assets are measured as the lease liability plus initial direct costs and prepaid lease payments less lease incentives. In measuring the present value of the future minimum lease payments, the Company generally uses its incremental borrowing rate. The lease term is the non-cancelable period of the lease and includes options to extend or terminate the lease when it is reasonably certain that an option will be exercised. Leases with terms of 12 months or less are not recorded on the Company's balance sheet. Lease expense is recognized on a straight-line basis over the lease terms, or in some cases, the useful life of the underlying asset. The Company accounts for the lease and non-lease components as a single lease component. The Company&#x2019;s lease agreement for its laboratory and office facilities is classified as an operating lease. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Impairment of Long-Lived Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Long-lived assets, such as property and equipment, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of assets to be held and used is measured by a comparison of the carrying amount of an asset to the estimated undiscounted future cash flows expected to be generated by the asset. If the carrying amount of an asset exceeds its estimated undiscounted future cash flows, an impairment charge is recognized as the amount by which the carrying amount of the asset exceeds the estimated fair value of the asset. As of December&#160;31, 2021 and 2020, no revision to the remaining useful lives or write-down of long-lived assets was required.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Income Taxes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Income taxes are accounted for under the liability method. Deferred tax assets and liabilities are recognized for the future tax consequences attributable to the differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases and the operating loss and tax credit carryforwards. Valuation allowances are established when necessary to reduce deferred tax assets to the amount expected to be realized. Deferred tax assets and liabilities are measured at the balance sheet date using the enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the period such tax rate changes are enacted.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Revenue Recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under ASC 606, the Company estimates each arrangement&#x2019;s total transaction price, which includes unconstrained variable consideration, and the recognition of that transaction price based on a cost-based input method that requires estimates to determine, at each reporting period, the percentage of completion based on the estimated total effort required to complete the project and the total transaction price. The unconstrained variable consideration amount included in the transaction price represents an amount for which it is probable that a significant reversal of cumulative revenue recognized will not occur. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company applies the following five-step revenue recognition model outlined in ASC 606 to adhere to this core principle: (1) identify the contract(s) with a customer; (2) identify the performance obligations in the contract; (3) determine the transaction price; (4) allocate the transaction price to the performance obligations in the contract; and (5) recognize revenue when (or as) the Company satisfies a performance obligation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;All of the Company&#x2019;s revenue to date has been generated from its collaboration agreements, primarily its collaboration agreement with Merck. The terms of these agreements generally require the Company to provide (i) license options for its compounds, (ii) research and development services and (iii) non-mandatory services in connection with participation in research or steering committees. Payments received under these arrangements may include non-refundable upfront license fees, partial or complete reimbursement of research and development costs, contingent consideration payments based on the achievement of defined collaboration objectives and royalties on sales of commercialized products. In some agreements, the collaboration partner is solely responsible for meeting defined objectives that trigger contingent or royalty payments. Often the partner only pursues such objectives subsequent to exercising an optional license on compounds identified as a result of the research and development services performed under the collaboration agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company assesses whether the promises in its arrangements, including any options provided to the partner, are considered distinct performance obligations that should be accounted for separately. Judgment is required to determine whether the license to a compound is distinct from research and development services or participation in research or steering committees, as well as whether options create material rights in the contract. In situations when a contract includes distinct services that are substantially the same and have the same pattern of transfer to the customer over time, they are recognized as a series of distinct services.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The transaction price in each arrangement is generally comprised of a non-refundable upfront fee and unconstrained variable consideration related to the performance of research and development services. The unconstrained variable consideration amount included in the transaction price represents an amount for which it is probable that a significant reversal of cumulative revenue recognized will not occur. The Company typically submits a budget for the research and development services to the partner in advance of performing the services. The transaction price is allocated to the identified performance obligations based on the standalone selling price, or SSP, of each distinct performance obligation. Judgment is required to determine the SSP. In instances where the SSP is not directly observable, such as when a license or service is not sold separately, SSP is determined using information that may include market conditions and other observable inputs. The Company utilizes judgment to assess the nature of its performance obligations to determine whether they are satisfied over time or at a point in time and, if over time, the appropriate method of measuring progress toward completion. The Company evaluates the measure of progress each reporting period and, if necessary, adjusts the measure of performance and related revenue recognition.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s collaboration agreements may include contingent payments related to specified development and regulatory milestones or contingent payments for royalties based on sales of a commercialized product. Milestones can be achieved for such activities in connection with progress in clinical trials, regulatory filings in various geographical markets and marketing approvals from health authorities. Sales-based royalties are generally related to the volume of annual sales of a commercialized product. At the inception of each agreement that includes such payments, the Company evaluates whether the milestones are considered probable of being achieved and estimates the amount to be included in the transaction price by using the most likely amount method. If it is probable that a significant revenue reversal would not occur, the associated milestone value is included in the transaction price. Milestone payments that are not within the Company&#x2019;s or its partner&#x2019;s control, such as those related to regulatory approvals, are not considered probable of being achieved until those approvals are received. The transaction price is then allocated to each performance obligation based on a relative SSP basis. At the end of each subsequent reporting period, the Company re-evaluates the probability of achievement of each such milestone and any related constraint and, if necessary, adjusts its estimate of the overall transaction price. Pursuant to the guidance in ASC 606, sales-based royalties are not included in the transaction price. Instead, royalties are recognized at the later of when the performance obligation is satisfied or partially satisfied, or when the sale that gives rise to the royalty occurs.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract modifications, defined as changes in the scope or price (or both) of a contract that are approved by the parties to the contract, such as a contract amendment, exist when the parties to a contract approve a modification that either creates new, or changes existing, enforceable rights and obligations of the parties to the contract. Depending on facts and circumstances, the Company accounts for a contract modification as one of the following: (i) a separate contract; (ii) a termination of the existing contract and a creation of a new contract; or (iii) a combination of the preceding treatments. A contract modification is accounted for as a separate contract if the scope of the contract increases because of the addition of promised services that are distinct and if the price of the contract increases by an amount of consideration that reflects the Company&#x2019;s standalone selling prices of the additional promised services. When a contract modification is not considered a separate contract and the remaining services are distinct from the services transferred on or before the date of the contract modification, the Company accounts for the contract modification as a termination of the existing contract and a creation of a new contract. When a contract modification is not considered a separate contract and the remaining services are not distinct, the &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Company accounts for the contract modification as an add-on to the existing contract and as an adjustment to revenue on a cumulative catch-up basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Research and Development&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Research and development costs are expensed as incurred. Research and development expenses primarily include salaries and benefits for medical, clinical, quality, preclinical, manufacturing and research personnel, costs related to research activities, preclinical studies, clinical trials, drug manufacturing expenses and allocated overhead and facility occupancy costs. The Company accounts for non-refundable advance payments for goods or services that will be used in future research and development activities as expenses when the goods have been received or when the service has been performed rather than when the payment is made. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Clinical trial costs are a component of research and development expenses. The Company accrues estimated costs for its clinical trial activities performed by third parties, including clinical research organizations, or CROs, and other service providers based upon estimates of the proportion of work completed over the life of the individual clinical trial and patient enrollment rates in accordance with associated agreements. The Company's estimates are determined through detailed discussions with internal personnel and its service providers as to the progress of each clinical trial and by reviewing contracts, vendor agreements and purchase orders for previously agreed-upon rates and fees to be paid for such services.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s stock-based compensation programs include stock option grants, as well as shares issued under its 2019 Employee Stock Purchase Plan, or ESPP. Grants are awarded to employees, directors and nonemployees. The Company measures employee and director stock-based compensation expense for all stock-based awards at the grant date based on the fair value measurement of the award. Subsequent to the adoption of ASU No. 2018-07, Compensation - Stock Compensation (Topic 718): Improvements to Nonemployee Share-Based Payment Accounting on January 1, 2019, stock-based compensation expense for nonemployee awards is measured based on the fair value on the date of adoption. The expense is recorded on a straight-line basis over the requisite service period, which is generally the vesting period, for the entire award. Forfeitures are estimated at the time of grant and revised, if necessary, in subsequent periods if actual forfeitures materially differ from estimates. The Company calculates the fair value measurement of stock options using the Black-Scholes option-pricing model.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Foreign Currency Transactions&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The functional currency of NGM Biopharmaceuticals Australia Pty Ltd., the Company&#x2019;s wholly-owned subsidiary, is the U.S. dollar. Accordingly, all monetary assets and liabilities of the subsidiary are remeasured into U.S. dollars at the current period-end exchange rates and non-monetary assets are remeasured using historical exchange rates. Income and expense elements are remeasured to U.S. dollars using the average exchange rates in effect during the period. Remeasurement gains and losses are recorded as other expense, net on the consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company is subject to foreign currency risk with respect to its clinical and manufacturing contracts denominated in currencies other than the U.S. dollar, primarily British Pounds, Swiss Francs, Australian dollars and the Euro. Payments on contracts denominated in foreign currencies are made at the spot rate on the day of payment. Changes in the exchange rate between billing dates and payment dates are recorded within other income (expense), net, on the consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Comprehensive Loss&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Comprehensive loss is composed of net loss and certain changes in stockholders&#x2019; equity that are excluded from net loss, primarily unrealized gains or losses, net of taxes, on the Company&#x2019;s marketable securities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Net Loss per Share&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic net loss per share is calculated by dividing net loss by the weighted average number of shares outstanding during the period, less shares subject to repurchase and excludes any dilutive effects of stock-based options and awards. Diluted net income per share is computed by giving effect to all potentially dilutive shares, including common stock issuable upon exercise of stock options. However, where there is a diluted net loss per share, no adjustment is made for potentially issuable shares since their effect would be anti-dilutive. In this case, diluted net loss per share is equal to basic net loss per share.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net loss per share was computed as follows (in thousands, except share and per share amounts):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Numerator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net loss&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(120,335)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(102,487)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(42,795)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Denominator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Weighted average number of shares used in calculating net loss per share&#x2014;basic and diluted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;77,085,405&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;68,475,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;50,297,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net loss per share&#x2014;basic and diluted&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1.56)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1.50)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(0.85)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Potentially dilutive securities that were not included in the diluted per share calculations because they would be anti-dilutive were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Options to purchase common stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,484,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,017,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,824,780&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Shares committed under ESPP&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;389,947&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;291,992&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;396,682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,874,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,309,910&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;11,221,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Segment and Geographical Information&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company operates in one business segment. Substantially all of the Company&#x2019;s long-lived assets, primarily comprised of property and equipment, are based in the United States. For the years ended December&#160;31, 2021, 2020 and 2019, the Company&#x2019;s revenues were entirely within the United States based upon the location of the Company and Merck.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Recent Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;New accounting pronouncements are issued by the Financial Accounting Standards Board, or FASB, or other standard setting bodies and adopted by the Company as of the specified effective date. Unless otherwise discussed, the impact of recently issued standards that are not yet effective will not have a material impact on the Company&#x2019;s results of operations and financial position upon adoption. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Recently Adopted Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the Jumpstart Our Business Startups Act of 2012, as amended, or the JOBS Act, the Company met the definition of an emerging growth company prior to December 31, 2021 and elected the extended transition period for complying with new or revised accounting standards pursuant to Section 107(b) of the JOBS Act and, as a result, had not been subject to the same implementation timing for new or revised accounting standards as for other public companies that are not emerging growth companies. Effective December 31, 2021, the Company was no longer an emerging growth company, and as a result, the Company was required to adopt ASC 842 for the fiscal year beginning January 1, 2021 using a modified-retrospective approach under which the Company recognized and measured leases existing at, or entered into after, January 1, 2021.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company elected the optional transition approach of not adjusting its comparative period financial statements for the adoption of ASC 842, and as a result, the Company's consolidated balance sheet as of December 31, 2020 was not restated to reflect the adoption of ASC 842. Effective January 1, 2021, the Company recorded a right-of-use, or ROU, asset of $5.9&#160;million (which was net of its deferred rent liability of $9.4 million as of December 31, 2020) and corresponding lease liability of $15.2 million related to the Company's real estate lease. Lease liabilities are measured at the lease commencement date as the present value of future minimum lease payments over the term of the lease. Lease ROU assets are measured as the lease liability plus initial direct costs and prepaid lease payments less lease incentives. In measuring the present value of the future minimum lease payments, the discount rate for the lease is the rate implicit in the lease unless that rate cannot be readily determined. In that case, the lessee is required to use its incremental borrowing rate. In computing its lease liabilities, the Company used its incremental borrowing rate based on information available on the commencement effective date of January 1, 2021 using a company-specific rate in the United States that is fully collateralized and consistent with the lease term for the Company's real estate lease. The lease term is the non-cancelable period of &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;the Company's real estate lease. The Company does not assume renewals in its determination of the lease term unless the renewals are deemed by management to be reasonably certain at lease inception.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company elected the package of practical expedients permitted under the transition guidance associated with ASC 842, which, among other things, allowed the Company to carry forward the historical lease classification of those leases in place as of January 1, 2021. The Company also elected the practical expedient to not separate non-lease components from lease components and instead accounts for them as a single lease component for all classes of underlying assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The effect of adopting ASC 842 on the Company&#x2019;s consolidated balance sheet as of January 1, 2021 was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:53.578%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.524%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2020&#160;(1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;ASC 842 adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Adjusted balances as of &lt;br/&gt;January 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use asset&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,855&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,855&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred rent, current&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,975)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liability, current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,785&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,785&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred rent, non-current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,417&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,417)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liability, non-current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,392&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,855&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;_________________&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;(1) As reported in the Company's 2020 Annual Report on Form 10-K.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In November 2018, the FASB issued ASU 2018-18, Collaborative Arrangements (ASC 808): Clarifying the Interaction between ASC 808 and ASC 606, which clarifies that certain transactions between collaborative arrangement participants should be accounted for as revenue under ASC 606 when the collaborative arrangement participant is a customer. In addition, ASC 808 precludes an entity from presenting consideration from a transaction in a collaborative arrangement as revenue from contracts with customers if the participant is not a customer for that transaction. The Company adopted ASU 2018-18 effective January 1, 2021, noting no material impact on the Company&#x2019;s results of operations and financial position.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In December 2019, the FASB issued ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes. The new guidance modifies ASC 740 to simplify several aspects of accounting for income taxes, including eliminating certain exceptions to the guidance in ASC 740 related to the approach for intraperiod tax allocation. The Company adopted ASU 2019-12 effective January 1, 2021, noting no material impact on the Company&#x2019;s results of operations and financial position.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In June 2016, the FASB issued ASU 2016-13, Financial Instruments &#x2013; Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments. The standard amends guidance on reporting credit losses for financial assets held at amortized cost basis, including accounts receivable, investments classified as available for sale, such as the Company's debt securities, and unbilled related party revenue. Estimated credit losses will be recorded as an allowance rather than a write-down. In November 2019, the FASB issued ASU 2019-10, which deferred the effective date for certain ASUs including ASU 2016-13. Given the Company was no longer an emerging growth company as of December 31, 2021, the Company adopted ASU 2016-13 effective January 1, 2021, noting no material impact on the Company&#x2019;s results of operations and financial position.&lt;/span&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDA5_62b7b6c9-e4cc-4d01-84c2-0bac19114070">Basis of Presentation and Principles of ConsolidationThe consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles, or U.S. GAAP, and include the consolidated accounts of NGM Biopharmaceuticals, Inc. and its wholly-owned foreign subsidiary in Australia, NGM Biopharmaceuticals Australia Pty Ltd.</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:ConsolidationPolicyTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzQzOTgwNDY1Mzg1MzM_3ef5f771-949c-4796-99f1-6622488a021a">All intercompany balances and transactions have been eliminated upon consolidation.</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDA1_9148a3ef-e0a4-4539-9dd6-479262979dc3">Use of EstimatesThe preparation of consolidated financial statements in conformity with U.S. GAAP requires management to make judgments, assumptions and estimates that affect the reported amounts of assets, liabilities, revenues and expenses. Specific accounts that require management estimates include, but are not limited to, the valuation of common stock and the associated stock-based compensation expense, contract manufacturing accruals, clinical trial accruals and revenue recognition in accordance with Accounting Standards Update, or ASU, 2014-09, Revenue from Contracts with Customers (Topic 606), or ASC 606. Management bases its estimates on historical experience and on various other assumptions that are believed to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying value of assets and liabilities that are not readily apparent from other sources. Actual results could differ materially from those estimates, and to the extent that there are differences between management's estimates and actual results, the Company's future financial statement presentation, financial condition, results of operations and cash flows may be affected.</us-gaap:UseOfEstimates>
    <us-gaap:NetIncomeLoss
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzEwOTk1MTE3NTg2MTI_0a2626ba-1f86-48cf-9781-8955575ccc1a"
      unitRef="usd">-120300000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzEwOTk1MTE3NTg2MjQ_4fe3a964-bb26-45fe-a85c-f6ad7cc9d8de"
      unitRef="usd">-102500000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzEwOTk1MTE3NTg2NDg_3fe10811-41fe-4428-ae09-2b9664c85562"
      unitRef="usd">-42800000</us-gaap:NetIncomeLoss>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzEwOTk1MTE3NTg2NTY_80adb4be-8699-4e38-b984-2c0fbfcab9f0"
      unitRef="usd">-419000000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:CashCashEquivalentsAndShortTermInvestments
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzEwOTk1MTE2NTc0Mzg_206e6ccd-9465-4087-9abf-85d797a9dfdd"
      unitRef="usd">366300000</us-gaap:CashCashEquivalentsAndShortTermInvestments>
    <ngm:SaleOfStockCommonStockAvailableForIssuance
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzEwOTk1MTE2NTc3MTI_8fcd2553-fe18-4f14-8597-99b6b15c03fe"
      unitRef="usd">127200000</ngm:SaleOfStockCommonStockAvailableForIssuance>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDA2_14c7b7be-4454-44b8-a6c2-bd3ff1b2d961">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Fair Value of Financial Instruments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying amounts of cash and cash equivalents, the related party receivable from collaboration and other current assets and liabilities approximate their respective fair values due to their short-term nature.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:CashAndCashEquivalentsUnrestrictedCashAndCashEquivalentsPolicy
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDEw_16234659-ac22-46ee-bf45-19fc7a2ba52f">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Cash and Cash Equivalents&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash and cash equivalents are stated at fair value. Cash equivalents are securities with an original maturity of three months or less at the time of purchase. The Company limits its credit risk associated with cash and cash equivalents by placing its investments with a bank it believes is highly creditworthy and with highly rated money market funds. As of December&#160;31, 2021 and 2020, cash and cash equivalents consisted of bank deposits and investments in money market funds.&lt;/span&gt;&lt;/div&gt;</us-gaap:CashAndCashEquivalentsUnrestrictedCashAndCashEquivalentsPolicy>
    <us-gaap:MarketableSecuritiesPolicy
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDEx_b92ea124-eb31-469b-9da4-cae64fdd4fa8">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Marketable Securities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The appropriate classification of the Company&#x2019;s marketable securities is determined at the time of purchase and such designations are re-evaluated at each balance sheet date. All of the Company&#x2019;s securities are considered as available-for-sale and carried at estimated fair values and reported in cash equivalents and short-term marketable securities. Unrealized gains and losses on available-for-sale securities are excluded from net loss and reported in accumulated other comprehensive income (loss) as a separate component of stockholders&#x2019; equity. Interest income, net, includes interest, amortization of purchase premiums and accretion of purchase discounts, realized gains and losses on sales of securities and other-than-temporary declines in the fair value of securities, if any. The cost of securities sold is based on the specific identification method.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s investments are regularly reviewed for other-than-temporary declines in fair value. This review includes the consideration of the cause of the impairment, including the creditworthiness of the security issuers, the number of securities in an unrealized loss position, the severity and duration of the unrealized losses, whether the Company has the intent to sell the securities and whether it is more likely than not that the Company will be required to sell the securities before the recovery of their amortized cost basis. When the Company determines that the decline in fair value of an investment is below its carrying value and this decline is other-than-temporary, the Company reduces the carrying value of the security it holds and records a loss for the amount of such decline. As of December&#160;31, 2021, the Company did not record any impairment related to other-than-temporary declines in the fair value of securities.&lt;/span&gt;&lt;/div&gt;</us-gaap:MarketableSecuritiesPolicy>
    <us-gaap:OtherThanTemporaryImpairmentLossDebtSecuritiesAvailableForSale
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzIxOTkwMjMyODI5NzU_816593a1-f887-42e7-9d8d-c865c924e1d7"
      unitRef="usd">0</us-gaap:OtherThanTemporaryImpairmentLossDebtSecuritiesAvailableForSale>
    <us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDAw_e3d94323-d57b-44d2-b379-c651aeb66c7f">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Restricted Cash&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s restricted cash balance represents collateral required under the Company&#x2019;s facility lease agreement and is classified as a non-current asset on the consolidated balance sheets, as the collateral will not be returned to the Company within twelve months from the date of these consolidated financial statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy>
    <us-gaap:ConcentrationRiskCreditRisk
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDAx_7bbb3d62-98a1-4f2f-a166-e899fc79e4c1">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Concentration of Credit and Other Risks&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash, cash equivalents and marketable securities from the Company&#x2019;s available-for-sale and marketable securities portfolio potentially subject the Company to concentrations of credit risk. The Company is invested in money market funds and marketable securities through custodial relationships with major United States, or U.S., and Australian banks. Under its investment policy, the Company limits amounts invested in such securities by credit rating, maturity, industry group, investment type and issuer, except for securities issued by the U.S. government.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Related party receivables from collaborations are typically unsecured. Accordingly, the Company may be exposed to credit risk generally associated with its current amended and restated research collaboration, product development and license agreement, or the Amended Collaboration Agreement, with Merck Sharp &amp;amp; Dohme Corp., or Merck, and any future collaboration agreements with other collaboration partners. To date, the Company has not experienced any losses related to these receivables.  &lt;/span&gt;&lt;/div&gt;Amounts recognized as revenue prior to the Company having an unconditional right (other than a right that is conditioned only on the passage of time) to receipt are recorded as contract assets in the Company's  consolidated balance sheets. Although the Company expects to have an unconditional right to receive such amounts, the Company may be exposed to the risk of not receiving the recorded amounts under its current collaboration agreement with Merck and any future collaboration agreements with other collaboration partners. To date, the Company has not experienced any losses related to contract assets.</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i2e9e54b74f884f5084718937e298efdb_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3Xzc0MDc_00fd304a-7ee5-4f5e-8350-5c0eac2640d7"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i8d639d849f494d0da9849957a1b43e88_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3Xzc0MDc_0b6709d5-2c03-41d8-8b3c-6cb8cdb691a6"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ie55a63ff2d5940ac9f48ff7e3d2e47c3_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3Xzc0MDc_c0577de4-5f26-40ec-a2ff-326da558ffe7"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDEy_c299e222-42e1-487e-bf13-673e10449694">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Property and Equipment, Net&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment is recorded at cost and consists of computer equipment, laboratory equipment and office furniture and leasehold improvements. Maintenance and repairs, and training on the use of equipment, are expensed as incurred. Costs that improve assets or extend their economic lives are capitalized. Depreciation is recognized using the straight-line method based on an estimated useful life of the asset, which is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.807%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:37.993%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Laboratory equipment and office furniture&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvement&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shorter&#160;of&#160;life&#160;of&#160;asset&#160;or&#160;lease&#160;term&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <ngm:ScheduleOfEstimatedUsefulLifeOfAssetTableTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDAy_d2017328-1873-4d55-91f7-abffd6e265d9">Depreciation is recognized using the straight-line method based on an estimated useful life of the asset, which is as follows:&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.807%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:37.993%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Laboratory equipment and office furniture&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvement&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shorter&#160;of&#160;life&#160;of&#160;asset&#160;or&#160;lease&#160;term&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</ngm:ScheduleOfEstimatedUsefulLifeOfAssetTableTableTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i8ae8fec99f764b899cd2315d48d6431c_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTpmYzVkYmRmMWVmNmQ0NThhOGRiMGQxNWQ3MTA2MDU0NS90YWJsZXJhbmdlOmZjNWRiZGYxZWY2ZDQ1OGE4ZGIwZDE1ZDcxMDYwNTQ1XzAtMS0xLTEtNjIyNA_6d6968ca-0eb5-464c-b325-c3366aed821d">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i9fe6124bc6464837a6b844d013a27fda_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTpmYzVkYmRmMWVmNmQ0NThhOGRiMGQxNWQ3MTA2MDU0NS90YWJsZXJhbmdlOmZjNWRiZGYxZWY2ZDQ1OGE4ZGIwZDE1ZDcxMDYwNTQ1XzEtMS0xLTEtNjIyNA_6833cd0d-d1cc-496b-b2c6-f74a5bb73d10">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDAz_2bd19d95-c7c6-48b5-822e-0c2f407451d2">LeasesEffective January 1, 2021, the Company adopted Accounting Standards Update, or ASU, 2016-02, Leases (Topic 842), referred to as ASC 842. Under ASC 842, the Company determines if an arrangement is a lease at inception. Lease assets represent the Company's right to use an underlying asset for the lease term and lease liabilities represent the Company's obligation to make lease payments arising from the lease. Lease liabilities are measured at the lease commencement date as the present value of future minimum lease payments over the term of the lease. Lease assets are measured as the lease liability plus initial direct costs and prepaid lease payments less lease incentives. In measuring the present value of the future minimum lease payments, the Company generally uses its incremental borrowing rate. The lease term is the non-cancelable period of the lease and includes options to extend or terminate the lease when it is reasonably certain that an option will be exercised. Leases with terms of 12 months or less are not recorded on the Company's balance sheet. Lease expense is recognized on a straight-line basis over the lease terms, or in some cases, the useful life of the underlying asset. The Company accounts for the lease and non-lease components as a single lease component. The Company&#x2019;s lease agreement for its laboratory and office facilities is classified as an operating lease.</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDA3_7d51b104-c7bd-4998-82bc-2a355c777d5d">Impairment of Long-Lived AssetsLong-lived assets, such as property and equipment, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of assets to be held and used is measured by a comparison of the carrying amount of an asset to the estimated undiscounted future cash flows expected to be generated by the asset. If the carrying amount of an asset exceeds its estimated undiscounted future cash flows, an impairment charge is recognized as the amount by which the carrying amount of the asset exceeds the estimated fair value of the asset.</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3Mzk4_10d9113a-b491-43f6-95df-6178c5c07041">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Income Taxes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Income taxes are accounted for under the liability method. Deferred tax assets and liabilities are recognized for the future tax consequences attributable to the differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases and the operating loss and tax credit carryforwards. Valuation allowances are established when necessary to reduce deferred tax assets to the amount expected to be realized. Deferred tax assets and liabilities are measured at the balance sheet date using the enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the period such tax rate changes are enacted.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDA0_a3a8ba3e-fe67-4427-ad98-13a680902a7b">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Revenue Recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under ASC 606, the Company estimates each arrangement&#x2019;s total transaction price, which includes unconstrained variable consideration, and the recognition of that transaction price based on a cost-based input method that requires estimates to determine, at each reporting period, the percentage of completion based on the estimated total effort required to complete the project and the total transaction price. The unconstrained variable consideration amount included in the transaction price represents an amount for which it is probable that a significant reversal of cumulative revenue recognized will not occur. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company applies the following five-step revenue recognition model outlined in ASC 606 to adhere to this core principle: (1) identify the contract(s) with a customer; (2) identify the performance obligations in the contract; (3) determine the transaction price; (4) allocate the transaction price to the performance obligations in the contract; and (5) recognize revenue when (or as) the Company satisfies a performance obligation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;All of the Company&#x2019;s revenue to date has been generated from its collaboration agreements, primarily its collaboration agreement with Merck. The terms of these agreements generally require the Company to provide (i) license options for its compounds, (ii) research and development services and (iii) non-mandatory services in connection with participation in research or steering committees. Payments received under these arrangements may include non-refundable upfront license fees, partial or complete reimbursement of research and development costs, contingent consideration payments based on the achievement of defined collaboration objectives and royalties on sales of commercialized products. In some agreements, the collaboration partner is solely responsible for meeting defined objectives that trigger contingent or royalty payments. Often the partner only pursues such objectives subsequent to exercising an optional license on compounds identified as a result of the research and development services performed under the collaboration agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company assesses whether the promises in its arrangements, including any options provided to the partner, are considered distinct performance obligations that should be accounted for separately. Judgment is required to determine whether the license to a compound is distinct from research and development services or participation in research or steering committees, as well as whether options create material rights in the contract. In situations when a contract includes distinct services that are substantially the same and have the same pattern of transfer to the customer over time, they are recognized as a series of distinct services.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The transaction price in each arrangement is generally comprised of a non-refundable upfront fee and unconstrained variable consideration related to the performance of research and development services. The unconstrained variable consideration amount included in the transaction price represents an amount for which it is probable that a significant reversal of cumulative revenue recognized will not occur. The Company typically submits a budget for the research and development services to the partner in advance of performing the services. The transaction price is allocated to the identified performance obligations based on the standalone selling price, or SSP, of each distinct performance obligation. Judgment is required to determine the SSP. In instances where the SSP is not directly observable, such as when a license or service is not sold separately, SSP is determined using information that may include market conditions and other observable inputs. The Company utilizes judgment to assess the nature of its performance obligations to determine whether they are satisfied over time or at a point in time and, if over time, the appropriate method of measuring progress toward completion. The Company evaluates the measure of progress each reporting period and, if necessary, adjusts the measure of performance and related revenue recognition.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s collaboration agreements may include contingent payments related to specified development and regulatory milestones or contingent payments for royalties based on sales of a commercialized product. Milestones can be achieved for such activities in connection with progress in clinical trials, regulatory filings in various geographical markets and marketing approvals from health authorities. Sales-based royalties are generally related to the volume of annual sales of a commercialized product. At the inception of each agreement that includes such payments, the Company evaluates whether the milestones are considered probable of being achieved and estimates the amount to be included in the transaction price by using the most likely amount method. If it is probable that a significant revenue reversal would not occur, the associated milestone value is included in the transaction price. Milestone payments that are not within the Company&#x2019;s or its partner&#x2019;s control, such as those related to regulatory approvals, are not considered probable of being achieved until those approvals are received. The transaction price is then allocated to each performance obligation based on a relative SSP basis. At the end of each subsequent reporting period, the Company re-evaluates the probability of achievement of each such milestone and any related constraint and, if necessary, adjusts its estimate of the overall transaction price. Pursuant to the guidance in ASC 606, sales-based royalties are not included in the transaction price. Instead, royalties are recognized at the later of when the performance obligation is satisfied or partially satisfied, or when the sale that gives rise to the royalty occurs.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract modifications, defined as changes in the scope or price (or both) of a contract that are approved by the parties to the contract, such as a contract amendment, exist when the parties to a contract approve a modification that either creates new, or changes existing, enforceable rights and obligations of the parties to the contract. Depending on facts and circumstances, the Company accounts for a contract modification as one of the following: (i) a separate contract; (ii) a termination of the existing contract and a creation of a new contract; or (iii) a combination of the preceding treatments. A contract modification is accounted for as a separate contract if the scope of the contract increases because of the addition of promised services that are distinct and if the price of the contract increases by an amount of consideration that reflects the Company&#x2019;s standalone selling prices of the additional promised services. When a contract modification is not considered a separate contract and the remaining services are distinct from the services transferred on or before the date of the contract modification, the Company accounts for the contract modification as a termination of the existing contract and a creation of a new contract. When a contract modification is not considered a separate contract and the remaining services are not distinct, the &lt;/span&gt;&lt;/div&gt;Company accounts for the contract modification as an add-on to the existing contract and as an adjustment to revenue on a cumulative catch-up basis.</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:ResearchAndDevelopmentExpensePolicy
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3Mzk5_97119997-1ba7-4cec-b128-b0d7b427bc59">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Research and Development&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Research and development costs are expensed as incurred. Research and development expenses primarily include salaries and benefits for medical, clinical, quality, preclinical, manufacturing and research personnel, costs related to research activities, preclinical studies, clinical trials, drug manufacturing expenses and allocated overhead and facility occupancy costs. The Company accounts for non-refundable advance payments for goods or services that will be used in future research and development activities as expenses when the goods have been received or when the service has been performed rather than when the payment is made. &lt;/span&gt;&lt;/div&gt;Clinical trial costs are a component of research and development expenses. The Company accrues estimated costs for its clinical trial activities performed by third parties, including clinical research organizations, or CROs, and other service providers based upon estimates of the proportion of work completed over the life of the individual clinical trial and patient enrollment rates in accordance with associated agreements. The Company's estimates are determined through detailed discussions with internal personnel and its service providers as to the progress of each clinical trial and by reviewing contracts, vendor agreements and purchase orders for previously agreed-upon rates and fees to be paid for such services.</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDEz_e400daea-42d8-4cbc-8bfc-789e9a68a69a">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s stock-based compensation programs include stock option grants, as well as shares issued under its 2019 Employee Stock Purchase Plan, or ESPP. Grants are awarded to employees, directors and nonemployees. The Company measures employee and director stock-based compensation expense for all stock-based awards at the grant date based on the fair value measurement of the award. Subsequent to the adoption of ASU No. 2018-07, Compensation - Stock Compensation (Topic 718): Improvements to Nonemployee Share-Based Payment Accounting on January 1, 2019, stock-based compensation expense for nonemployee awards is measured based on the fair value on the date of adoption. The expense is recorded on a straight-line basis over the requisite service period, which is generally the vesting period, for the entire award. Forfeitures are estimated at the time of grant and revised, if necessary, in subsequent periods if actual forfeitures materially differ from estimates. The Company calculates the fair value measurement of stock options using the Black-Scholes option-pricing model.&lt;/span&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDE0_4f6f2aba-257e-4de9-8f91-3525c63aef8a">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Foreign Currency Transactions&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The functional currency of NGM Biopharmaceuticals Australia Pty Ltd., the Company&#x2019;s wholly-owned subsidiary, is the U.S. dollar. Accordingly, all monetary assets and liabilities of the subsidiary are remeasured into U.S. dollars at the current period-end exchange rates and non-monetary assets are remeasured using historical exchange rates. Income and expense elements are remeasured to U.S. dollars using the average exchange rates in effect during the period. Remeasurement gains and losses are recorded as other expense, net on the consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company is subject to foreign currency risk with respect to its clinical and manufacturing contracts denominated in currencies other than the U.S. dollar, primarily British Pounds, Swiss Francs, Australian dollars and the Euro. Payments on contracts denominated in foreign currencies are made at the spot rate on the day of payment. Changes in the exchange rate between billing dates and payment dates are recorded within other income (expense), net, on the consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:ComprehensiveIncomePolicyPolicyTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDE1_df667dda-036d-42d8-bbec-6009e7167038">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Comprehensive Loss&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Comprehensive loss is composed of net loss and certain changes in stockholders&#x2019; equity that are excluded from net loss, primarily unrealized gains or losses, net of taxes, on the Company&#x2019;s marketable securities.&lt;/span&gt;&lt;/div&gt;</us-gaap:ComprehensiveIncomePolicyPolicyTextBlock>
    <us-gaap:EarningsPerSharePolicyTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDA4_86dce911-2c55-4384-9785-847bf25bbdfa">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Net Loss per Share&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic net loss per share is calculated by dividing net loss by the weighted average number of shares outstanding during the period, less shares subject to repurchase and excludes any dilutive effects of stock-based options and awards. Diluted net income per share is computed by giving effect to all potentially dilutive shares, including common stock issuable upon exercise of stock options. However, where there is a diluted net loss per share, no adjustment is made for potentially issuable shares since their effect would be anti-dilutive. In this case, diluted net loss per share is equal to basic net loss per share.&lt;/span&gt;&lt;/div&gt;</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3Mzk1_a0920536-7561-4f5f-b809-9dd038924c80">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net loss per share was computed as follows (in thousands, except share and per share amounts):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Numerator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net loss&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(120,335)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(102,487)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(42,795)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Denominator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Weighted average number of shares used in calculating net loss per share&#x2014;basic and diluted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;77,085,405&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;68,475,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;50,297,524&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net loss per share&#x2014;basic and diluted&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1.56)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1.50)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(0.85)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzMtMS0xLTEtNjIyNA_53e77a78-d8b0-47e4-8c02-fac345bcf8f5"
      unitRef="usd">-120335000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzMtMy0xLTEtNjIyNA_f4c64520-14ed-4fa0-b1ad-e67dad76260d"
      unitRef="usd">-102487000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzMtNS0xLTEtNjIyNA_b5140098-69db-4718-8cd9-00260168965d"
      unitRef="usd">-42795000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzUtMS0xLTEtNjIyNA_9432baac-7492-4672-b4bc-021fa843f950"
      unitRef="shares">77085405</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzUtMS0xLTEtNjIyNA_944e1b79-7488-4b06-b847-07460144ce60"
      unitRef="shares">77085405</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzUtMy0xLTEtNjIyNA_ce4cfddd-3030-44ea-b015-471b3834b88b"
      unitRef="shares">68475378</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzUtMy0xLTEtNjIyNA_da2bec33-39ce-4762-984d-a1b5d2cf4aa9"
      unitRef="shares">68475378</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzUtNS0xLTEtNjIyNA_777ee964-5daf-4e87-a569-6d93b3f695cb"
      unitRef="shares">50297524</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzUtNS0xLTEtNjIyNA_a408db84-af59-4cbb-84b4-493d8a8870ac"
      unitRef="shares">50297524</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzYtMS0xLTEtNjIyNA_a9921ad4-e7a7-498b-ad0b-67efc629e719"
      unitRef="usdPerShare">-1.56</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzYtMS0xLTEtNjIyNA_e68c6053-f13f-4c0a-a01f-71bd9f4074e5"
      unitRef="usdPerShare">-1.56</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzYtMy0xLTEtNjIyNA_07923e7a-be78-4cc4-a35d-4bb9e4b174a7"
      unitRef="usdPerShare">-1.50</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzYtMy0xLTEtNjIyNA_86780106-e77a-4961-8156-a704b8a2d770"
      unitRef="usdPerShare">-1.50</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzYtNS0xLTEtNjIyNA_3fb30280-9013-4a46-8176-562d07f71393"
      unitRef="usdPerShare">-0.85</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo3OTRlZmQyOGEyNDk0NGMxOWVhMGJhNjIyOGI0YWQ5MS90YWJsZXJhbmdlOjc5NGVmZDI4YTI0OTQ0YzE5ZWEwYmE2MjI4YjRhZDkxXzYtNS0xLTEtNjIyNA_8673a25d-311a-461d-abc9-01ee6f641e14"
      unitRef="usdPerShare">-0.85</us-gaap:EarningsPerShareBasic>
    <us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3Mzk2_e62e560d-4786-4b9e-b9ba-81fa37575ba9">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Potentially dilutive securities that were not included in the diluted per share calculations because they would be anti-dilutive were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Options to purchase common stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,484,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,017,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,824,780&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Shares committed under ESPP&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;389,947&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;291,992&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;396,682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,874,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,309,910&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;11,221,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i9cf558823e144b3a89c28ed43706da2b_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTpjZTNlZjkxNDZiOGE0MjZjYjgyNjdhYzlmOGE3ZDQ5Ny90YWJsZXJhbmdlOmNlM2VmOTE0NmI4YTQyNmNiODI2N2FjOWY4YTdkNDk3XzMtMS0xLTEtNjIyNA_a571eabb-4024-4d4c-86a5-5d446af574f1"
      unitRef="shares">10484553</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ie50cfd4da85540738df74ae2afab20af_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTpjZTNlZjkxNDZiOGE0MjZjYjgyNjdhYzlmOGE3ZDQ5Ny90YWJsZXJhbmdlOmNlM2VmOTE0NmI4YTQyNmNiODI2N2FjOWY4YTdkNDk3XzMtMy0xLTEtNjIyNA_ce2fcf25-6e66-436f-9eb8-0e79e70028eb"
      unitRef="shares">10017918</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i7cfdaf7cffd345939ef71b028372f69d_D20190101-20191231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTpjZTNlZjkxNDZiOGE0MjZjYjgyNjdhYzlmOGE3ZDQ5Ny90YWJsZXJhbmdlOmNlM2VmOTE0NmI4YTQyNmNiODI2N2FjOWY4YTdkNDk3XzMtNS0xLTEtNjIyNA_1408ed7f-51ee-40d2-aba0-45ce9ecf5f85"
      unitRef="shares">10824780</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ic2fbfe204df541e8bf0e5ed6574f3529_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTpjZTNlZjkxNDZiOGE0MjZjYjgyNjdhYzlmOGE3ZDQ5Ny90YWJsZXJhbmdlOmNlM2VmOTE0NmI4YTQyNmNiODI2N2FjOWY4YTdkNDk3XzQtMS0xLTEtNjIyNA_5279787a-2913-492b-8241-2031c99a50db"
      unitRef="shares">389947</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i6bc922b3ab344702b0e26a7a1ee5a34a_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTpjZTNlZjkxNDZiOGE0MjZjYjgyNjdhYzlmOGE3ZDQ5Ny90YWJsZXJhbmdlOmNlM2VmOTE0NmI4YTQyNmNiODI2N2FjOWY4YTdkNDk3XzQtMy0xLTEtNjIyNA_aea58195-c937-467b-b838-c088a1dd4917"
      unitRef="shares">291992</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i0847f3b07f3d4036b209f7cac1adf82d_D20190101-20191231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTpjZTNlZjkxNDZiOGE0MjZjYjgyNjdhYzlmOGE3ZDQ5Ny90YWJsZXJhbmdlOmNlM2VmOTE0NmI4YTQyNmNiODI2N2FjOWY4YTdkNDk3XzQtNS0xLTEtNjIyNA_62683853-e240-42fb-8e94-b09fe0a31a1d"
      unitRef="shares">396682</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTpjZTNlZjkxNDZiOGE0MjZjYjgyNjdhYzlmOGE3ZDQ5Ny90YWJsZXJhbmdlOmNlM2VmOTE0NmI4YTQyNmNiODI2N2FjOWY4YTdkNDk3XzYtMS0xLTEtNjIyNA_a957d4dc-ae8e-4756-9b7e-6c1e6ff699f6"
      unitRef="shares">10874500</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTpjZTNlZjkxNDZiOGE0MjZjYjgyNjdhYzlmOGE3ZDQ5Ny90YWJsZXJhbmdlOmNlM2VmOTE0NmI4YTQyNmNiODI2N2FjOWY4YTdkNDk3XzYtMy0xLTEtNjIyNA_664fd2b3-5f29-44ef-b324-16894a9ec5bc"
      unitRef="shares">10309910</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTpjZTNlZjkxNDZiOGE0MjZjYjgyNjdhYzlmOGE3ZDQ5Ny90YWJsZXJhbmdlOmNlM2VmOTE0NmI4YTQyNmNiODI2N2FjOWY4YTdkNDk3XzYtNS0xLTEtNjIyNA_72f10b85-9e0f-465f-99fb-21ef21cb79d0"
      unitRef="shares">11221462</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:SegmentReportingPolicyPolicyTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3NDE2_e6865179-9f7a-48f2-a9ef-30182899e70e">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Segment and Geographical Information&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company operates in one business segment. Substantially all of the Company&#x2019;s long-lived assets, primarily comprised of property and equipment, are based in the United States. For the years ended December&#160;31, 2021, 2020 and 2019, the Company&#x2019;s revenues were entirely within the United States based upon the location of the Company and Merck.&lt;/span&gt;&lt;/div&gt;</us-gaap:SegmentReportingPolicyPolicyTextBlock>
    <us-gaap:NumberOfOperatingSegments
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzIwNzM4_89229d99-6738-42ae-93be-7f93b2ddc489"
      unitRef="segment">1</us-gaap:NumberOfOperatingSegments>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzI3Mzk3_802ed6b0-b2ad-425d-8a0d-12031a1bba4b">&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Recent Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;New accounting pronouncements are issued by the Financial Accounting Standards Board, or FASB, or other standard setting bodies and adopted by the Company as of the specified effective date. Unless otherwise discussed, the impact of recently issued standards that are not yet effective will not have a material impact on the Company&#x2019;s results of operations and financial position upon adoption. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Recently Adopted Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the Jumpstart Our Business Startups Act of 2012, as amended, or the JOBS Act, the Company met the definition of an emerging growth company prior to December 31, 2021 and elected the extended transition period for complying with new or revised accounting standards pursuant to Section 107(b) of the JOBS Act and, as a result, had not been subject to the same implementation timing for new or revised accounting standards as for other public companies that are not emerging growth companies. Effective December 31, 2021, the Company was no longer an emerging growth company, and as a result, the Company was required to adopt ASC 842 for the fiscal year beginning January 1, 2021 using a modified-retrospective approach under which the Company recognized and measured leases existing at, or entered into after, January 1, 2021.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company elected the optional transition approach of not adjusting its comparative period financial statements for the adoption of ASC 842, and as a result, the Company's consolidated balance sheet as of December 31, 2020 was not restated to reflect the adoption of ASC 842. Effective January 1, 2021, the Company recorded a right-of-use, or ROU, asset of $5.9&#160;million (which was net of its deferred rent liability of $9.4 million as of December 31, 2020) and corresponding lease liability of $15.2 million related to the Company's real estate lease. Lease liabilities are measured at the lease commencement date as the present value of future minimum lease payments over the term of the lease. Lease ROU assets are measured as the lease liability plus initial direct costs and prepaid lease payments less lease incentives. In measuring the present value of the future minimum lease payments, the discount rate for the lease is the rate implicit in the lease unless that rate cannot be readily determined. In that case, the lessee is required to use its incremental borrowing rate. In computing its lease liabilities, the Company used its incremental borrowing rate based on information available on the commencement effective date of January 1, 2021 using a company-specific rate in the United States that is fully collateralized and consistent with the lease term for the Company's real estate lease. The lease term is the non-cancelable period of &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;the Company's real estate lease. The Company does not assume renewals in its determination of the lease term unless the renewals are deemed by management to be reasonably certain at lease inception.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company elected the package of practical expedients permitted under the transition guidance associated with ASC 842, which, among other things, allowed the Company to carry forward the historical lease classification of those leases in place as of January 1, 2021. The Company also elected the practical expedient to not separate non-lease components from lease components and instead accounts for them as a single lease component for all classes of underlying assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The effect of adopting ASC 842 on the Company&#x2019;s consolidated balance sheet as of January 1, 2021 was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:53.578%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.524%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2020&#160;(1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;ASC 842 adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Adjusted balances as of &lt;br/&gt;January 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use asset&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,855&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,855&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred rent, current&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,975)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liability, current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,785&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,785&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred rent, non-current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,417&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,417)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liability, non-current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,392&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,855&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;_________________&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;(1) As reported in the Company's 2020 Annual Report on Form 10-K.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In November 2018, the FASB issued ASU 2018-18, Collaborative Arrangements (ASC 808): Clarifying the Interaction between ASC 808 and ASC 606, which clarifies that certain transactions between collaborative arrangement participants should be accounted for as revenue under ASC 606 when the collaborative arrangement participant is a customer. In addition, ASC 808 precludes an entity from presenting consideration from a transaction in a collaborative arrangement as revenue from contracts with customers if the participant is not a customer for that transaction. The Company adopted ASU 2018-18 effective January 1, 2021, noting no material impact on the Company&#x2019;s results of operations and financial position.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In December 2019, the FASB issued ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes. The new guidance modifies ASC 740 to simplify several aspects of accounting for income taxes, including eliminating certain exceptions to the guidance in ASC 740 related to the approach for intraperiod tax allocation. The Company adopted ASU 2019-12 effective January 1, 2021, noting no material impact on the Company&#x2019;s results of operations and financial position.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In June 2016, the FASB issued ASU 2016-13, Financial Instruments &#x2013; Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments. The standard amends guidance on reporting credit losses for financial assets held at amortized cost basis, including accounts receivable, investments classified as available for sale, such as the Company's debt securities, and unbilled related party revenue. Estimated credit losses will be recorded as an allowance rather than a write-down. In November 2019, the FASB issued ASU 2019-10, which deferred the effective date for certain ASUs including ASU 2016-13. Given the Company was no longer an emerging growth company as of December 31, 2021, the Company adopted ASU 2016-13 effective January 1, 2021, noting no material impact on the Company&#x2019;s results of operations and financial position.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="ib2bfb6c898724683b797815375aa6fdc_I20210101"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzM4NDgyOTA3ODg0MDU_7506191b-36c9-44da-bb15-f775509fe2d7"
      unitRef="usd">5900000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:DeferredRentCredit
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3XzEwOTk1MTE3NDY1NDk_f7467dd7-249b-42bc-8329-db3853e4c710"
      unitRef="usd">9400000</us-gaap:DeferredRentCredit>
    <us-gaap:OperatingLeaseLiability
      contextRef="ib2bfb6c898724683b797815375aa6fdc_I20210101"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90ZXh0cmVnaW9uOjJlMzdiMzllMzg4YjQwZmM4MWE0YmFiMDJhYTJkMWQ3Xzc2OTY1ODE0ODUzNzQ_031f8d49-b3dd-4988-be74-96f7f70166e2"
      unitRef="usd">15200000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzMtMS0xLTEtMTMxNjU_120ceec7-5063-4055-b463-40c704eee86d"
      unitRef="usd">0</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="ib2bfb6c898724683b797815375aa6fdc_I20210101"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzMtMy0xLTEtMTMxNjU_9632a564-2adf-4160-b71f-8c3e33ab3329"
      unitRef="usd">5855000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i2799d4c3830749f4a7250d8f4065f081_I20210101"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzMtNS0xLTEtMTMxNjU_7b5e5b46-0697-4413-8d2b-9dd28af22b15"
      unitRef="usd">5855000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:DeferredRentCreditCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzUtMS0xLTEtMTMxNjU_06346a84-f7a7-4129-a164-d4a5b596432d"
      unitRef="usd">2975000</us-gaap:DeferredRentCreditCurrent>
    <us-gaap:DeferredRentCreditCurrent
      contextRef="ib2bfb6c898724683b797815375aa6fdc_I20210101"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzUtMy0xLTEtMTMxNjU_dffa8a2c-89bc-4b77-ba68-ef1af1e2b4b9"
      unitRef="usd">-2975000</us-gaap:DeferredRentCreditCurrent>
    <us-gaap:DeferredRentCreditCurrent
      contextRef="i2799d4c3830749f4a7250d8f4065f081_I20210101"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzUtNS0xLTEtMTMxNjU_b66ca393-ede3-4aea-b796-d7d14bab4366"
      unitRef="usd">0</us-gaap:DeferredRentCreditCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzYtMS0xLTEtMTMxNjU_2d777c0c-836c-4804-a2a4-5ab7ae4c2ada"
      unitRef="usd">0</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="ib2bfb6c898724683b797815375aa6fdc_I20210101"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzYtMy0xLTEtMTMxNjU_62d15927-94c1-41b3-acad-ac017199b048"
      unitRef="usd">4785000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i2799d4c3830749f4a7250d8f4065f081_I20210101"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzYtNS0xLTEtMTMxNjU_a442da93-8011-4862-b6b1-603a88f08ada"
      unitRef="usd">4785000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:DeferredRentCreditNoncurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzctMS0xLTEtMTMxNjU_c293fd60-cb3b-4308-a03b-9476b217faaa"
      unitRef="usd">6417000</us-gaap:DeferredRentCreditNoncurrent>
    <us-gaap:DeferredRentCreditNoncurrent
      contextRef="ib2bfb6c898724683b797815375aa6fdc_I20210101"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzctMy0xLTEtMTMxNjU_ebc34f47-18ff-4484-95ad-d1d488c7776a"
      unitRef="usd">-6417000</us-gaap:DeferredRentCreditNoncurrent>
    <us-gaap:DeferredRentCreditNoncurrent
      contextRef="i2799d4c3830749f4a7250d8f4065f081_I20210101"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzctNS0xLTEtMTMxNjU_d8e33a12-c7da-4409-a2c7-b9dc824c7562"
      unitRef="usd">0</us-gaap:DeferredRentCreditNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzgtMS0xLTEtMTMxNjU_9c8154ce-b189-410c-b248-60e00376d022"
      unitRef="usd">0</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="ib2bfb6c898724683b797815375aa6fdc_I20210101"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzgtMy0xLTEtMTMxNjU_1cdcbe03-6fc7-42af-8839-3a925e905e14"
      unitRef="usd">10462000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i2799d4c3830749f4a7250d8f4065f081_I20210101"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzgtNS0xLTEtMTMxNjU_3e8e875a-411c-4cda-aa3a-ac6a739d62da"
      unitRef="usd">10462000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <ngm:OperatingLeaseLiabilityAndDeferredRentCredit
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzktMS0xLTEtMTMxNjU_03bddeb6-70ad-47d0-9e0b-9f01c2a1adb7"
      unitRef="usd">9392000</ngm:OperatingLeaseLiabilityAndDeferredRentCredit>
    <ngm:OperatingLeaseLiabilityAndDeferredRentCredit
      contextRef="ib2bfb6c898724683b797815375aa6fdc_I20210101"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzktMy0xLTEtMTMxNjU_9898c7e6-9416-47a0-85bb-74c99743c3f9"
      unitRef="usd">5855000</ngm:OperatingLeaseLiabilityAndDeferredRentCredit>
    <ngm:OperatingLeaseLiabilityAndDeferredRentCredit
      contextRef="i2799d4c3830749f4a7250d8f4065f081_I20210101"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMTUvZnJhZzoyZTM3YjM5ZTM4OGI0MGZjODFhNGJhYjAyYWEyZDFkNy90YWJsZTo2ZjIyMDIxZjk2YjY0NzRlYjUwZGI1MjU4NDViMjMzNy90YWJsZXJhbmdlOjZmMjIwMjFmOTZiNjQ3NGViNTBkYjUyNTg0NWIyMzM3XzktNS0xLTEtMTMxNjU_38343aaf-2977-4dbe-add3-418b2132b203"
      unitRef="usd">15247000</ngm:OperatingLeaseLiabilityAndDeferredRentCredit>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90ZXh0cmVnaW9uOmI2ZDlmOTUxZTM4NzRhY2NiZmEwYzljNWRkNmUwZGViXzIzOTE_62c93734-ab3f-42c9-8422-335653db953e">Fair Value Measurements&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash equivalents and marketable securities are classified as available-for-sale securities and consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.988%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.579%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Amortized&lt;br/&gt;Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Gain&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Fair&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;As of December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;U.S. treasury securities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;141,093&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(116)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;140,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;129,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;129,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Corporate and agency bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;64,997&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(20)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;64,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;8,497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;8,497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;344,350&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(136)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;344,221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Classified as:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;129,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Short-term marketable securities (amortized cost of $214,587)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;214,458&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;344,221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:11pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.988%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.579%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Amortized&lt;br/&gt;Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Gain&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Fair&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;As of December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;U.S. government agencies securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;98,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(3)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;98,653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;41,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;41,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Corporate and agency bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,543&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(2)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;285,793&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(5)&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;285,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Classified as:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Short-term marketable securities (amortized cost of $148,135)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;148,139&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;285,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash and cash equivalents in the table above excludes cash on deposit with banks of $22.0 million and $9.4 million as of December&#160;31, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;To date, the Company has not recorded any impairment charges against the market value of its marketable securities. In determining whether a decline is other than temporary, the Company considers various factors including the length of time and extent to which the market value has been less than cost, the financial condition and near-term prospects of the issuer and the Company&#x2019;s intent and ability to retain its investment in the issuer for a period of time sufficient to allow for any anticipated recovery in market value.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2021 and 2020, the Company&#x2019;s marketable securities had remaining contractual maturities of less than one year. As of December&#160;31, 2021, the Company had 21 marketable securities in an unrealized loss position compared to one marketable security in an unrealized loss position as of December&#160;31, 2020. Marketable securities that had been in unrealized loss positions as of December&#160;31, 2021 and 2020 had been in an unrealized loss position for less than twelve months. The Company does not intend to sell marketable securities that are in an unrealized loss position and it is highly unlikely that the Company will be required to sell the investments before recovery of their amortized cost basis, which may be maturity.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Assets and Liabilities Measured at Fair Value on a Recurring Basis&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes, by major security type, our available-for-sale securities that were measured at fair value on a recurring basis and were categorized using the fair value hierarchy (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.988%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.579%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Fair Value Measurements&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;As of December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;U.S. treasury securities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;140,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;140,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;129,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;129,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Corporate and agency bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;64,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;64,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;8,497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;8,497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;270,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;73,481&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;344,221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.988%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.579%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Fair Value Measurements&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;As of December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;U.S. government agencies securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;98,653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;98,653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;41,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;41,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Corporate and agency bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;148,139&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;285,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying amounts of cash and cash equivalents, the related party receivable and contract asset from collaboration and other current assets and liabilities approximate their respective fair values due to their short-term nature.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company estimates the fair values of investments in corporate and agency bond securities, commercial paper and U.S. government agencies and treasury securities using Level 2 inputs by taking into consideration valuations obtained from third-party pricing services.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There were no transfers of assets or liabilities between the fair value measurement levels during the years ended December&#160;31, 2021 and 2020.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90ZXh0cmVnaW9uOmI2ZDlmOTUxZTM4NzRhY2NiZmEwYzljNWRkNmUwZGViXzIzOTI_60fee709-1917-465c-8fbf-731a6d1832cd">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash equivalents and marketable securities are classified as available-for-sale securities and consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.988%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.579%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Amortized&lt;br/&gt;Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Gain&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Fair&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;As of December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;U.S. treasury securities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;141,093&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(116)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;140,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;129,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;129,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Corporate and agency bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;64,997&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(20)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;64,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;8,497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;8,497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;344,350&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(136)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;344,221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Classified as:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;129,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Short-term marketable securities (amortized cost of $214,587)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;214,458&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;344,221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:11pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.988%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.579%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Amortized&lt;br/&gt;Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Gain&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Fair&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;As of December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;U.S. government agencies securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;98,647&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(3)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;98,653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;41,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;41,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Corporate and agency bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,543&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(2)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;285,793&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(5)&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;285,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Classified as:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Short-term marketable securities (amortized cost of $148,135)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;148,139&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;285,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i23f467200a19459dbb9a681cc21d3119_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzItMS0xLTEtMTYxODc_fa57b718-a94e-48eb-9544-a3c9665a77e5"
      unitRef="usd">141093000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i23f467200a19459dbb9a681cc21d3119_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzItMy0xLTEtMTYxODc_512bbacf-e3ff-43c1-93c8-7689b4f28987"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i23f467200a19459dbb9a681cc21d3119_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzItNS0xLTEtMTYxODc_d38977b6-5e3a-42da-950a-9e43c3bc3f69"
      unitRef="usd">116000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i23f467200a19459dbb9a681cc21d3119_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzItNy0xLTEtMTYxODc_9354bfe7-e393-4e88-a546-f6ffa8f4341f"
      unitRef="usd">140977000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i5f383d62e87544baaa1acc249d8467b5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzItMS0xLTEtMTMzMDk_3ecdd44f-e9eb-49a0-998d-aadb8575176e"
      unitRef="usd">129763000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i5f383d62e87544baaa1acc249d8467b5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzItMy0xLTEtMTMzMDk_15db6fab-10fd-46ac-ac27-9d1c6537bec7"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i5f383d62e87544baaa1acc249d8467b5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzItNS0xLTEtMTMzMDk_d428351a-403c-41a0-8c86-f026295d6de6"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i5f383d62e87544baaa1acc249d8467b5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzItNy0xLTEtMTMzMDk_3f1077c0-de1d-4568-80e5-0b43771c3701"
      unitRef="usd">129763000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="if593c660314f49b082a4ea5ea73b2002_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzQtMS0xLTEtMTMzMDk_b74e72ba-7e62-4927-9bf1-a90d22c89db7"
      unitRef="usd">64997000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="if593c660314f49b082a4ea5ea73b2002_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzQtMy0xLTEtMTMzMDk_65727ba6-acfa-4c38-9ab4-a3260aef7522"
      unitRef="usd">7000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="if593c660314f49b082a4ea5ea73b2002_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzQtNS0xLTEtMTMzMDk_87a8236f-dc66-4d51-bb13-2cf8ad3aac30"
      unitRef="usd">20000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="if593c660314f49b082a4ea5ea73b2002_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzQtNy0xLTEtMTMzMDk_30a7b931-6bef-41d6-bab3-ce1ad8b8058b"
      unitRef="usd">64984000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i023b525c239a4be9aeb7ce9dd489fd44_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzUtMS0xLTEtMTMzMDk_46cb32c4-2b37-40e6-a3e5-dd25132e1f3d"
      unitRef="usd">8497000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i023b525c239a4be9aeb7ce9dd489fd44_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzUtMy0xLTEtMTMzMDk_5582a0c9-6d02-4bef-868f-4158a62e16f6"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i023b525c239a4be9aeb7ce9dd489fd44_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzUtNS0xLTEtMTMzMDk_c922f830-6ded-4059-8831-2d68f7b3cd87"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i023b525c239a4be9aeb7ce9dd489fd44_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzUtNy0xLTEtMTMzMDk_36ad57d6-8778-4922-b84e-7055668b2fbe"
      unitRef="usd">8497000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzYtMS0xLTEtMTMzMDk_6630d26c-b90d-423b-a48a-e6a6fa178508"
      unitRef="usd">344350000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzYtMy0xLTEtMTMzMDk_8398472f-274e-404c-a9aa-afdaed8d821e"
      unitRef="usd">7000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzYtNS0xLTEtMTMzMDk_914141f1-1c88-41f1-a107-80dab779d15a"
      unitRef="usd">136000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzYtNy0xLTEtMTMzMDk_71949bf4-a155-436e-93cb-4f7c1f1eb1df"
      unitRef="usd">344221000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i4f5352f15cb349498917d0f32fbe9ddb_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzgtNy0xLTEtMTMzMDk_dce106be-ab29-4de0-b2a9-90ebbf983c6a"
      unitRef="usd">129763000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i771a757b934c4417a8f0de740f6f511c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzktMC0xLTEtMTMzMDkvdGV4dHJlZ2lvbjoxN2JjZWU1MzdjOWY0OThmYTM4NWI0MmE5MDg0MjJjZl8xMDk5NTExNjI3ODQ5_78d12881-a1bc-4b00-a0c7-657237ec1cb7"
      unitRef="usd">214587000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i771a757b934c4417a8f0de740f6f511c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzktNy0xLTEtMTMzMDk_bb429afc-0b8a-49ae-9a31-27139c6ac148"
      unitRef="usd">214458000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo3MDhkMDE4YTEwMTQ0MGIwYjlhZmI5MTNlMWYxYTcxMy90YWJsZXJhbmdlOjcwOGQwMThhMTAxNDQwYjBiOWFmYjkxM2UxZjFhNzEzXzEwLTctMS0xLTEzMzA5_4dc6f303-8359-407c-8c3b-4bf896bcc4b9"
      unitRef="usd">344221000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i901f447ffe8a4d6db6f9e6bbb7ad9195_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzItMS0xLTEtNjIyNA_00611ebb-d3b4-49ec-b292-744d8ac29320"
      unitRef="usd">137658000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i901f447ffe8a4d6db6f9e6bbb7ad9195_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzItMy0xLTEtNjIyNA_f6a43b90-22b1-46ec-9ab0-ee50f233aa60"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i901f447ffe8a4d6db6f9e6bbb7ad9195_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzItNS0xLTEtNjIyNA_7bcf76d8-f7b5-472b-8eaa-97768920c589"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i901f447ffe8a4d6db6f9e6bbb7ad9195_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzItNy0xLTEtNjIyNA_c0104dd2-8cb2-420d-8180-5868c8518687"
      unitRef="usd">137658000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="icc0d23a93dcb4f8ea27bcca7ac6331ad_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzMtMS0xLTEtNjIyNA_47054df3-b7a6-48c1-b79a-fdc37131a3aa"
      unitRef="usd">98647000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="icc0d23a93dcb4f8ea27bcca7ac6331ad_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzMtMy0xLTEtNjIyNA_a152bb42-24f1-42db-bdfa-1fc76c7f2a4e"
      unitRef="usd">9000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="icc0d23a93dcb4f8ea27bcca7ac6331ad_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzMtNS0xLTEtNjIyNA_963ac06f-719d-485c-b37c-2d4d96f68c57"
      unitRef="usd">3000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="icc0d23a93dcb4f8ea27bcca7ac6331ad_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzMtNy0xLTEtNjIyNA_fce92a2f-210a-437e-b106-4015b8197e00"
      unitRef="usd">98653000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="iad508477f2e94405a08c7a850c9aa9bf_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzQtMS0xLTEtNjIyNA_7bd06264-34b8-4054-9bcc-60fb5c2e85be"
      unitRef="usd">41945000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="iad508477f2e94405a08c7a850c9aa9bf_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzQtMy0xLTEtNjIyNA_fee5ed8c-d3d0-4efd-9854-21adf8290e08"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="iad508477f2e94405a08c7a850c9aa9bf_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzQtNS0xLTEtNjIyNA_a740ed02-7cf3-4ef4-93fb-c9cbf56c9f69"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="iad508477f2e94405a08c7a850c9aa9bf_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzQtNy0xLTEtNjIyNA_7cfb63d0-3dde-41ff-8344-74a98486025a"
      unitRef="usd">41945000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="ieeee8e21020b44cc9cb367b29f2a156a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzUtMS0xLTEtNjIyNA_f8e3c921-c6cf-4c28-9e3e-c0cd01513253"
      unitRef="usd">7543000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="ieeee8e21020b44cc9cb367b29f2a156a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzUtMy0xLTEtNjIyNA_43368010-94e6-4c89-83b7-8986c0310d92"
      unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="ieeee8e21020b44cc9cb367b29f2a156a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzUtNS0xLTEtNjIyNA_8e3c1a69-5a72-4053-8096-4de47de6c836"
      unitRef="usd">2000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="ieeee8e21020b44cc9cb367b29f2a156a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzUtNy0xLTEtNjIyNA_cec95e38-e4cc-4993-85b1-3837d7f51010"
      unitRef="usd">7541000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzYtMS0xLTEtNjIyNA_b8701eae-8a4e-420f-a11d-d62eb7c93953"
      unitRef="usd">285793000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzYtMy0xLTEtNjIyNA_8ce39cbc-16c7-4f59-8945-26a0a0e4b064"
      unitRef="usd">9000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzYtNS0xLTEtNjIyNA_0ce1b3e1-e829-4460-95b4-8b82e6016dd6"
      unitRef="usd">5000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzYtNy0xLTEtNjIyNA_2a584ff8-29c5-47cc-b516-6117c63bfd0a"
      unitRef="usd">285797000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="ide2340b39f4640e1b8d9ebb28e6bd7da_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzgtNy0xLTEtNjIyNA_a1d1f1a5-f369-4674-b722-479cc218f81f"
      unitRef="usd">137658000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="i4ccde188acbe46f8a1e7d2077912cdf8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzktMC0xLTEtMTYxNjMvdGV4dHJlZ2lvbjo4Y2ZiZTMyOTZmOTE0MzNkOWY0ZmRhYjNkNjdiZjFlZl8xMDk5NTExNjI3ODQ5_bdf2d879-954e-472b-8c2e-b48c8bdac6d9"
      unitRef="usd">148135000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i4ccde188acbe46f8a1e7d2077912cdf8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzktNy0xLTEtNjIyNA_6050581d-acd6-4706-8507-ef29b8c418ba"
      unitRef="usd">148139000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTpjOGQzNWFhNWVkNGE0OTgzYmM3MWMxZjkwNmM1ZmYyMC90YWJsZXJhbmdlOmM4ZDM1YWE1ZWQ0YTQ5ODNiYzcxYzFmOTA2YzVmZjIwXzEwLTctMS0xLTYyMjQ_832405fd-d906-4c4b-ab2e-f298b87602e5"
      unitRef="usd">285797000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:InterestBearingDepositsInBanks
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90ZXh0cmVnaW9uOmI2ZDlmOTUxZTM4NzRhY2NiZmEwYzljNWRkNmUwZGViXzI3Ng_885b105e-0fd0-4df8-bbc1-4fcd47ecce94"
      unitRef="usd">22000000</us-gaap:InterestBearingDepositsInBanks>
    <us-gaap:InterestBearingDepositsInBanks
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90ZXh0cmVnaW9uOmI2ZDlmOTUxZTM4NzRhY2NiZmEwYzljNWRkNmUwZGViXzI4Mw_603791d9-b5d6-40ec-9da9-fa337509be43"
      unitRef="usd">9400000</us-gaap:InterestBearingDepositsInBanks>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsNumberOfPositions
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90ZXh0cmVnaW9uOmI2ZDlmOTUxZTM4NzRhY2NiZmEwYzljNWRkNmUwZGViXzk3OA_4572a74d-a262-49f2-a119-0fa7dc29fea2"
      unitRef="security">21</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsNumberOfPositions>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsNumberOfPositions
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90ZXh0cmVnaW9uOmI2ZDlmOTUxZTM4NzRhY2NiZmEwYzljNWRkNmUwZGViXzEwNDQ_f15d189d-b90d-471b-9be5-e7ce21bcee2a"
      unitRef="security">1</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsNumberOfPositions>
    <us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90ZXh0cmVnaW9uOmI2ZDlmOTUxZTM4NzRhY2NiZmEwYzljNWRkNmUwZGViXzIzOTQ_de033c3e-5a99-434a-8e2e-ee11020f96f1">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes, by major security type, our available-for-sale securities that were measured at fair value on a recurring basis and were categorized using the fair value hierarchy (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.988%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.579%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Fair Value Measurements&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;As of December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;U.S. treasury securities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;140,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;140,977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;129,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;129,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Corporate and agency bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;64,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;64,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;8,497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;8,497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;270,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;73,481&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;344,221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.988%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.579%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Fair Value Measurements&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;As of December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;U.S. government agencies securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;98,653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;98,653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;41,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;41,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Corporate and agency bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;148,139&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;285,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i1bb3e8119c504bf483a3dc048c245adb_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzMtMS0xLTEtMTYyNTM_66da75d4-aa22-4032-8a84-6b361a699a94"
      unitRef="usd">140977000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="id4bd534b0d58493391253ac871f6f0d7_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzMtMy0xLTEtMTYyNTM_ec2f0f51-fc05-4106-898d-36d14282e1c7"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="id868208e41984f17bd1b3173eb9696ce_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzMtNS0xLTEtMTYyNTM_2a8cf497-6a81-407f-8d32-0cdb1622c085"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i6c1b81f6c79645eda72ed1bc1e082b1d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzMtNy0xLTEtMTYyNTM_644e0e93-e592-41cb-8c44-98338bf4425f"
      unitRef="usd">140977000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i3b7f35caacf64fc6aff43db4316ac0a7_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzMtMS0xLTEtNjIyNA_fb7f2f1f-4dd2-4b97-bc8d-80dc6a8a1235"
      unitRef="usd">129763000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i42431b0fdcf348f8bda6ace5e3fb0cfc_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzMtMy0xLTEtNjIyNA_f6c972b8-f4de-45f8-ac14-4fb21bbf43c5"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="iad34ea666aaa457a8e4399ccc1651cd9_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzMtNS0xLTEtNjIyNA_512fccfd-cc41-4c86-a07d-ac46cd33cc3a"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i3315abe5979645a6851e0d7ca955a9bd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzMtNy0xLTEtNjIyNA_0ac980b0-fa58-4776-8f31-f70985e700aa"
      unitRef="usd">129763000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ie9c247a5f8d34ca59661a51a2a7c9b9d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzUtMS0xLTEtNjIyNA_eba8ae7e-11a3-48cf-856b-3b0a2d86b82e"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ie48f273df0e14e24b851b944497e0fe0_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzUtMy0xLTEtNjIyNA_1a72a9b4-387d-4077-a003-5aeda1910d57"
      unitRef="usd">64984000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ia4f7972ec6324c74808dea7290a1fa42_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzUtNS0xLTEtNjIyNA_cae8fcbc-cef4-46e7-ab3d-dc896984e5f2"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i55cbf4a8e8d84d69b7a64efb3db99a93_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzUtNy0xLTEtNjIyNA_46ca0517-64d7-4707-95fa-376ebb4f704a"
      unitRef="usd">64984000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ib782a99f3d5847c2b78215f55216fde2_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzYtMS0xLTEtNjIyNA_2fc68f38-3ebf-47cb-bef0-c7d4ad077ae9"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i6b13c3aa7efc4677bb780e63684334fd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzYtMy0xLTEtNjIyNA_51bd8c9f-77ba-42c9-acbb-78556caeba92"
      unitRef="usd">8497000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i5fb593c1643f4cdf87375d7b97c13403_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzYtNS0xLTEtNjIyNA_2610521d-266a-4723-ad78-d738ff30b3e9"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i77c19b2f79b949888f226e09a6634fe5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzYtNy0xLTEtNjIyNA_dd2a2515-b90e-4709-a69c-07072f659e8b"
      unitRef="usd">8497000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i393b15d9d5ae425c8bffcfbb5d4f7275_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzctMS0xLTEtNjIyNA_53cf059b-5859-4077-9c1d-95f5ef37c014"
      unitRef="usd">270740000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i5d50e465890241bbb0ed21e3a9455a1a_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzctMy0xLTEtNjIyNA_bfee5079-1b92-426e-8396-12b19c331ef7"
      unitRef="usd">73481000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i8532b128e56545569752f8e216970ec3_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzctNS0xLTEtNjIyNA_39b0bb23-ece7-43da-98bf-c5a41fe74c05"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i41583c277a9445dd83dd77387c4dbba2_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZToxM2NkNGI2ZmIxZDQ0ZDA2OWNiZmQ2MzQ1NmJjMzA0MS90YWJsZXJhbmdlOjEzY2Q0YjZmYjFkNDRkMDY5Y2JmZDYzNDU2YmMzMDQxXzctNy0xLTEtNjIyNA_1938ac7b-2061-4985-8168-9c47c13a80b3"
      unitRef="usd">344221000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i75e4053f27594ed194298943803ed9c9_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzMtMS0xLTEtNjIyNA_913df793-aa78-4bfb-b936-e33e6ba85abe"
      unitRef="usd">137658000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i086263338f404658be02a5c7b5b57a49_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzMtMy0xLTEtNjIyNA_73550900-a3b8-413c-bad3-1785d1d903c7"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="id400a7d1e3c04c898e471a27e021151c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzMtNS0xLTEtNjIyNA_d67f2f26-8adf-4c79-8a3e-136fa88505fb"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ia6c38ffee9004e7db0b5602e0cff7619_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzMtNy0xLTEtNjIyNA_9d3b1f26-2d24-44be-a71e-5518f5a9a519"
      unitRef="usd">137658000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i0b7f2ea9367843cdbb08d0382fb449c2_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzQtMS0xLTEtNjIyNA_aadaf6b2-9d1c-44e2-95a8-661f86f4ee38"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ife23c234453c46c8b680f43186951867_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzQtMy0xLTEtNjIyNA_e4efda3b-8705-439c-8c2e-aec863d4acbb"
      unitRef="usd">98653000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i44a1f1845bfe47768bf06ee095a47c99_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzQtNS0xLTEtNjIyNA_ca1e8a1c-0f24-4f60-b06d-f05693a2f052"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i0b066dfa46964d9a9bbffce73d3aa0c1_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzQtNy0xLTEtNjIyNA_15a50b10-a9d7-4877-b413-3ae11c840970"
      unitRef="usd">98653000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i525ad2417fda46128cf38a85be0067f9_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzUtMS0xLTEtNjIyNA_5536c333-11e6-4a4f-822c-29c9c015ccbf"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i3953a32eb2dd487fa508777c4296e159_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzUtMy0xLTEtNjIyNA_a7dda180-4af2-487f-ae9e-7add5ecf8815"
      unitRef="usd">41945000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i25be55c19fec40e7acf77b095c1cbed2_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzUtNS0xLTEtNjIyNA_32e74d1a-e5a0-406c-87b5-549a27309840"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i4b80ec368d6042fea7d02441ba672fd7_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzUtNy0xLTEtNjIyNA_d0c6648e-10b0-417d-9b69-6eba4f589cce"
      unitRef="usd">41945000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ia018b4cbdeb749fe9ae48b534cad9a04_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzYtMS0xLTEtNjIyNA_76c15440-b0f6-457b-9d2f-3221b16bb6a2"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i4f47f5abe66a48a685700a407381b529_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzYtMy0xLTEtNjIyNA_fceaf49e-e541-47ef-b5a7-812c6385e607"
      unitRef="usd">7541000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i0c49ea8b364340f8a5d6ce39fff7c740_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzYtNS0xLTEtNjIyNA_252db917-ef58-41bd-812d-2f1f27bf484a"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i78f779afefb747ea928768a2826127be_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzYtNy0xLTEtNjIyNA_57c7c7d0-188a-4abf-9b1d-9429704f3660"
      unitRef="usd">7541000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i31b6f9d9cad04e05b79dfcaeea8357c4_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzctMS0xLTEtNjIyNA_8ffcfa24-81e5-45be-ab0a-e028e012d54c"
      unitRef="usd">137658000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ib8e8747971cb42e58e2751ce7a9baf26_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzctMy0xLTEtNjIyNA_520805fc-3581-47ea-85b5-28998d719282"
      unitRef="usd">148139000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ibb540972049f4128befae884a24d42be_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzctNS0xLTEtNjIyNA_87632184-2288-47c3-a69b-22b03356f280"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i54505d909fc0454fa8d7ddab197ce4a3_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjEvZnJhZzpiNmQ5Zjk1MWUzODc0YWNjYmZhMGM5YzVkZDZlMGRlYi90YWJsZTo5YTkzYzUwMmUxZDg0ZDAyODEwOTMwYWI2ZWUwYjI0ZC90YWJsZXJhbmdlOjlhOTNjNTAyZTFkODRkMDI4MTA5MzBhYjZlZTBiMjRkXzctNy0xLTEtNjIyNA_cf26bbd1-4e8b-4106-8200-55438479e401"
      unitRef="usd">285797000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:SupplementalBalanceSheetDisclosuresTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90ZXh0cmVnaW9uOjk3YTAzNmU4YTUzNTRkYTBiNmY2ZWNhZWE1OTIzMzFjXzExNjc_58846788-98c6-4329-a988-6fa8e7c95c0b">Balance Sheet Components&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Cash, Cash Equivalents and Restricted Cash&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of cash, cash equivalents and restricted cash reported within the consolidated balance sheets to the amount reported within the consolidated statements of cash flows is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.894%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted cash&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,499&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,499&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total cash, cash equivalents and restricted cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;153,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;148,516&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Property and Equipment&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.894%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,880&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,880&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Laboratory equipment and office furniture&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,638&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,271&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Construction-in-progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total property and equipment, gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,039&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: accumulated depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(38,968)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(36,311)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,071&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,526&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Depreciation expense for the years ended December&#160;31, 2021, 2020 and 2019 was approximately $6.1 million, $6.6 million and $7.6 million, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:18pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Accrued Liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued liabilities consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:71.187%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.391%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Clinical trials and research and development costs&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,070&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,316&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Personnel-related costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,298&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,921&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Manufacturing costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,773&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,117&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,411&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,258&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:SupplementalBalanceSheetDisclosuresTextBlock>
    <us-gaap:ScheduleOfRestrictedCashAndCashEquivalentsTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90ZXh0cmVnaW9uOjk3YTAzNmU4YTUzNTRkYTBiNmY2ZWNhZWE1OTIzMzFjXzExNjg_0bfa82a9-e335-4c04-84a5-029f9a5b8a8a">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of cash, cash equivalents and restricted cash reported within the consolidated balance sheets to the amount reported within the consolidated statements of cash flows is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.894%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted cash&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,499&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,499&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total cash, cash equivalents and restricted cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;153,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;148,516&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfRestrictedCashAndCashEquivalentsTextBlock>
    <us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90ZXh0cmVnaW9uOjk3YTAzNmU4YTUzNTRkYTBiNmY2ZWNhZWE1OTIzMzFjXzExNjg_c3483958-217d-43a9-9133-a542f22c7969">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of cash, cash equivalents and restricted cash reported within the consolidated balance sheets to the amount reported within the consolidated statements of cash flows is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.894%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted cash&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,499&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,499&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total cash, cash equivalents and restricted cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;153,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;148,516&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphNDlkNzYxYjE5MWQ0MWYxYWViNmVjMTIwMjRmNTJlNC90YWJsZXJhbmdlOmE0OWQ3NjFiMTkxZDQxZjFhZWI2ZWMxMjAyNGY1MmU0XzItMS0xLTEtNjIyNA_0d08100a-1924-4133-9528-68fa35b9c33e"
      unitRef="usd">151795000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphNDlkNzYxYjE5MWQ0MWYxYWViNmVjMTIwMjRmNTJlNC90YWJsZXJhbmdlOmE0OWQ3NjFiMTkxZDQxZjFhZWI2ZWMxMjAyNGY1MmU0XzItMy0xLTEtNjIyNA_16e8f5c7-4f8f-43fd-bd2e-191de143724c"
      unitRef="usd">147017000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashNoncurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphNDlkNzYxYjE5MWQ0MWYxYWViNmVjMTIwMjRmNTJlNC90YWJsZXJhbmdlOmE0OWQ3NjFiMTkxZDQxZjFhZWI2ZWMxMjAyNGY1MmU0XzMtMS0xLTEtNjIyNA_17cffccf-5478-443a-bced-6f63ecf178c4"
      unitRef="usd">1499000</us-gaap:RestrictedCashNoncurrent>
    <us-gaap:RestrictedCashNoncurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphNDlkNzYxYjE5MWQ0MWYxYWViNmVjMTIwMjRmNTJlNC90YWJsZXJhbmdlOmE0OWQ3NjFiMTkxZDQxZjFhZWI2ZWMxMjAyNGY1MmU0XzMtMy0xLTEtNjIyNA_90ad5b19-8acf-48be-9630-fa612995cae2"
      unitRef="usd">1499000</us-gaap:RestrictedCashNoncurrent>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphNDlkNzYxYjE5MWQ0MWYxYWViNmVjMTIwMjRmNTJlNC90YWJsZXJhbmdlOmE0OWQ3NjFiMTkxZDQxZjFhZWI2ZWMxMjAyNGY1MmU0XzQtMS0xLTEtNjIyNA_680bd742-0f98-4245-af2a-c94722b4b175"
      unitRef="usd">153294000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphNDlkNzYxYjE5MWQ0MWYxYWViNmVjMTIwMjRmNTJlNC90YWJsZXJhbmdlOmE0OWQ3NjFiMTkxZDQxZjFhZWI2ZWMxMjAyNGY1MmU0XzQtMy0xLTEtNjIyNA_efaf950d-ecc3-4d06-aad5-0921e85ff959"
      unitRef="usd">148516000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90ZXh0cmVnaW9uOjk3YTAzNmU4YTUzNTRkYTBiNmY2ZWNhZWE1OTIzMzFjXzExNjk_2f276e21-2825-4026-9bfa-f026a1990733">&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.894%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,880&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,880&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Laboratory equipment and office furniture&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,638&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,271&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Construction-in-progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total property and equipment, gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,039&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: accumulated depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(38,968)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(36,311)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,071&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,526&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ibdd23095afd54e45bd05a4f3fc5201c3_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzItMS0xLTEtNjIyNA_472e3210-9ed3-4c48-9643-1222a49e2d06"
      unitRef="usd">25880000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i701b196ffac34c27aac9d2fe6d37a086_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzItMy0xLTEtNjIyNA_4ae2ac7a-a0c8-492a-bbaa-a6e043abd2cc"
      unitRef="usd">25880000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i6628d1114338446dac24c2bc2f322825_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzMtMS0xLTEtNjIyNA_2c43d2d7-5d87-4cc8-8d51-dacdec2c2a4b"
      unitRef="usd">21916000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i608212364de2463faad2453631fcde81_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzMtMy0xLTEtNjIyNA_e105b09b-5497-403b-95a3-a2566ae58680"
      unitRef="usd">23638000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ib77b6de97e314d25b807c4925945ef21_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzQtMS0xLTEtNjIyNA_fe4568c6-4934-43fd-a82b-8ea5bf0f39e2"
      unitRef="usd">1225000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i9b5a67e214184f88b719e7afbb86a1a1_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzQtMy0xLTEtNjIyNA_cee8973e-b33b-4291-a212-f8ff2ccccc54"
      unitRef="usd">1271000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i050d23d0e98049dc9ad88e3583195aee_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzUtMS0xLTEtNjIyNA_29826d6b-668f-47c4-b9be-56a426584708"
      unitRef="usd">18000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i38542f34dfc04196872be6bf0d870df1_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzUtMy0xLTEtNjIyNA_dee4dd29-5b56-4963-9bb0-3b0ee7b958c3"
      unitRef="usd">48000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzYtMS0xLTEtNjIyNA_9e396993-94c6-4092-8f33-a7b5408580c9"
      unitRef="usd">49039000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzYtMy0xLTEtNjIyNA_fa282b12-aff8-4863-ad24-249bd42c1545"
      unitRef="usd">50837000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzctMS0xLTEtNjIyNA_8d65145f-d59b-43e0-8eaa-93c6fa49f331"
      unitRef="usd">38968000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzctMy0xLTEtNjIyNA_854c1ad9-88ee-47e9-abf7-fe3dc5c0c62a"
      unitRef="usd">36311000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzgtMS0xLTEtNjIyNA_8ea1fd19-9fc2-40d0-9369-4079e8a8883c"
      unitRef="usd">10071000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphMGRkYTAxZjZlYzA0N2UxODhhNmI3NWZkNDdiOGIwNy90YWJsZXJhbmdlOmEwZGRhMDFmNmVjMDQ3ZTE4OGE2Yjc1ZmQ0N2I4YjA3XzgtMy0xLTEtNjIyNA_ec04f113-3133-4dcd-9221-ece4bfc024a7"
      unitRef="usd">14526000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Depreciation
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90ZXh0cmVnaW9uOjk3YTAzNmU4YTUzNTRkYTBiNmY2ZWNhZWE1OTIzMzFjXzQzNQ_f31a345a-f17d-477f-a199-566c8530cb1d"
      unitRef="usd">6100000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90ZXh0cmVnaW9uOjk3YTAzNmU4YTUzNTRkYTBiNmY2ZWNhZWE1OTIzMzFjXzQzOQ_3cf3a81d-b98c-4eef-b333-fe199be9439e"
      unitRef="usd">6600000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90ZXh0cmVnaW9uOjk3YTAzNmU4YTUzNTRkYTBiNmY2ZWNhZWE1OTIzMzFjXzQ0Ng_241867e4-83d9-43a9-aa11-30dfeadc1352"
      unitRef="usd">7600000</us-gaap:Depreciation>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90ZXh0cmVnaW9uOjk3YTAzNmU4YTUzNTRkYTBiNmY2ZWNhZWE1OTIzMzFjXzExNzA_da248e70-f9d7-47bc-9828-f2247d5d4820">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued liabilities consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:71.187%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.391%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Clinical trials and research and development costs&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,070&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,316&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Personnel-related costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,298&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,921&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Manufacturing costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,773&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,117&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,411&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,258&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <ngm:AccruedClinicalTrialsAndResearchAndDevelopmentCostsCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphZmI3ZGJiNjZhZWQ0MjI3YmRiM2FhZmNlNTI1ZWQ5Zi90YWJsZXJhbmdlOmFmYjdkYmI2NmFlZDQyMjdiZGIzYWFmY2U1MjVlZDlmXzItMS0xLTEtNjIyNA_912c5ab5-2081-4283-9e71-ac2abd5d4719"
      unitRef="usd">12070000</ngm:AccruedClinicalTrialsAndResearchAndDevelopmentCostsCurrent>
    <ngm:AccruedClinicalTrialsAndResearchAndDevelopmentCostsCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphZmI3ZGJiNjZhZWQ0MjI3YmRiM2FhZmNlNTI1ZWQ5Zi90YWJsZXJhbmdlOmFmYjdkYmI2NmFlZDQyMjdiZGIzYWFmY2U1MjVlZDlmXzItMy0xLTEtNjIyNA_a9895bef-6def-41fe-9750-c1d1227549b7"
      unitRef="usd">9316000</ngm:AccruedClinicalTrialsAndResearchAndDevelopmentCostsCurrent>
    <ngm:AccruedPersonnelExpenseCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphZmI3ZGJiNjZhZWQ0MjI3YmRiM2FhZmNlNTI1ZWQ5Zi90YWJsZXJhbmdlOmFmYjdkYmI2NmFlZDQyMjdiZGIzYWFmY2U1MjVlZDlmXzMtMS0xLTEtMTYzMDQ_4ecf0baf-7f49-45d0-bf51-fabbdd2be9f3"
      unitRef="usd">10298000</ngm:AccruedPersonnelExpenseCurrent>
    <ngm:AccruedPersonnelExpenseCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphZmI3ZGJiNjZhZWQ0MjI3YmRiM2FhZmNlNTI1ZWQ5Zi90YWJsZXJhbmdlOmFmYjdkYmI2NmFlZDQyMjdiZGIzYWFmY2U1MjVlZDlmXzMtMy0xLTEtMTYzMDQ_6d3522cf-cdce-462e-851e-51d876630c28"
      unitRef="usd">8921000</ngm:AccruedPersonnelExpenseCurrent>
    <ngm:AccruedManufacturingCostsCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphZmI3ZGJiNjZhZWQ0MjI3YmRiM2FhZmNlNTI1ZWQ5Zi90YWJsZXJhbmdlOmFmYjdkYmI2NmFlZDQyMjdiZGIzYWFmY2U1MjVlZDlmXzMtMS0xLTEtNjIyNA_9a5eac86-1355-49e5-b70f-75eae3b4d110"
      unitRef="usd">7773000</ngm:AccruedManufacturingCostsCurrent>
    <ngm:AccruedManufacturingCostsCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphZmI3ZGJiNjZhZWQ0MjI3YmRiM2FhZmNlNTI1ZWQ5Zi90YWJsZXJhbmdlOmFmYjdkYmI2NmFlZDQyMjdiZGIzYWFmY2U1MjVlZDlmXzMtMy0xLTEtNjIyNA_b50a3ee4-dff9-4fd6-b764-c4f9d5267654"
      unitRef="usd">8297000</ngm:AccruedManufacturingCostsCurrent>
    <ngm:AccruedExpensesCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphZmI3ZGJiNjZhZWQ0MjI3YmRiM2FhZmNlNTI1ZWQ5Zi90YWJsZXJhbmdlOmFmYjdkYmI2NmFlZDQyMjdiZGIzYWFmY2U1MjVlZDlmXzUtMS0xLTEtNjIyNA_71002dbe-d5e5-4111-90de-c77c816050c1"
      unitRef="usd">3117000</ngm:AccruedExpensesCurrent>
    <ngm:AccruedExpensesCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphZmI3ZGJiNjZhZWQ0MjI3YmRiM2FhZmNlNTI1ZWQ5Zi90YWJsZXJhbmdlOmFmYjdkYmI2NmFlZDQyMjdiZGIzYWFmY2U1MjVlZDlmXzUtMy0xLTEtNjIyNA_a3f7d4d0-e415-4ad4-8da0-2b44ed291231"
      unitRef="usd">3411000</ngm:AccruedExpensesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphZmI3ZGJiNjZhZWQ0MjI3YmRiM2FhZmNlNTI1ZWQ5Zi90YWJsZXJhbmdlOmFmYjdkYmI2NmFlZDQyMjdiZGIzYWFmY2U1MjVlZDlmXzYtMS0xLTEtNjIyNA_a74f5716-9a29-4ac2-9a14-efc27e925cf3"
      unitRef="usd">33258000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMjcvZnJhZzo5N2EwMzZlOGE1MzU0ZGEwYjZmNmVjYWVhNTkyMzMxYy90YWJsZTphZmI3ZGJiNjZhZWQ0MjI3YmRiM2FhZmNlNTI1ZWQ5Zi90YWJsZXJhbmdlOmFmYjdkYmI2NmFlZDQyMjdiZGIzYWFmY2U1MjVlZDlmXzYtMy0xLTEtNjIyNA_3552a0f7-d412-475f-8768-257b0069b7bf"
      unitRef="usd">29945000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:CollaborativeArrangementDisclosureTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzE5OTI2_369fc5d4-73f2-4018-8bb4-037c7c4f6d8c">Research Collaboration and License Agreements&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#0d0d0d;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Merck&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In 2015, the Company entered into a research collaboration, product development and license agreement with Merck, which, together with amendments made prior to June 30, 2021, is referred to as the Original Collaboration Agreement, covering the discovery, development and commercialization of novel therapies across a range of therapeutic areas, including a broad, multi-year drug discovery and early development program financially supported by Merck. Merck owned approximately 16.6% of the Company's outstanding shares as of December 31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On June 30, 2021, the Company and Merck entered into an amended and restated research collaboration, product development and license agreement, or the Amended Collaboration Agreement, with a narrower scope than contemplated in the Original Collaboration Agreement, as described in more detail below.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;The Original Collaboration Agreement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Original Collaboration Agreement had an initial five-year research term, and Merck was granted the unilateral right to extend the research phase of the collaboration for two additional two-year terms in exchange for a $20.0 million extension fee payable at each extension, as described in more detail below. Each extension, if and when exercised by Merck, would be considered and would be accounted for as a separate arrangement. Under the Original Collaboration Agreement, in March 2019, Merck exercised its first option to extend the research phase of the collaboration for &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg2MzE_d63a6548-69b5-40d0-a261-d2c0b51c845f"&gt;two&lt;/span&gt; additional years through March 16, 2022, agreeing at that time to continue to fund the Company&#x2019;s research and development efforts up to $75.0 million each year consistent with the initial five-year term and, in lieu of the $20.0 million extension fee that would have otherwise been payable to the Company at that time, Merck agreed to make additional payments totaling up to $20.0&#160;million in support of the Company&#x2019;s research and development program activities during 2021 and in the first quarter of 2022. Merck&#x2019;s decision whether or not to exercise its second option to extend the research phase of the collaboration under the Original Collaboration &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Agreement was mooted when, on June 30, 2021, Merck and the Company entered into the Amended Collaboration Agreement, as described in more detail below.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the terms of Original Collaboration Agreement, the Company determined the scientific direction and areas of therapeutic interest for the collaboration, with input from Merck, and was primarily responsible for the conduct of all research, preclinical and early clinical development activities through human proof-of-concept trials. The Company made the final determinations as to which collaboration compounds to advance into and through initial clinical trials, which collaboration compounds to progress into a human proof-of-concept trial and the design of any such trials, in each case with input from Merck through various governance committees.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the terms of the Original Collaboration Agreement, upon completion of a human proof-of-concept trial for a particular collaboration compound, regardless of the results of such trial, Merck had the one-time option to obtain an exclusive, worldwide license, on specified terms, to that collaboration compound, as well as to all other compounds that were directed against the same target and that result in the same effect on such target, or the related compounds, referred to as the Merck license option. For each program that Merck licensed, Merck was required to pay the Company a one-time fee of $20.0&#160;million. Following exercise of a Merck license option, Merck was responsible, at its own cost, for any further development and any commercialization activities for compounds within the applicable program that it licensed, or the licensed compounds, subject to the Company&#x2019;s option on a licensed compound-by-licensed compound basis, prior to Merck initiating any Phase 3 clinical trial of such licensed compound, to enter into a worldwide cost and profit share with Merck, or the cost and profit share option, and to co-detail the applicable licensed compound in the United States. If the Company elected to exercise its cost and profit share option for a particular licensed compound, Merck agreed to advance to the Company and/or assume up to 25% of the Company&#x2019;s share of the global development costs for such licensed compound, subject to an aggregate cap over the course of the collaboration. All such amounts advanced or assumed by Merck accrued interest and would be recouped by Merck in full out of the Company&#x2019;s share of any profits resulting from sales of the licensed compound for which the Company elected to exercise its cost and profit share option before the Company was entitled to receive any of those profits. If the Company did not elect to exercise its cost and profit share option for a particular licensed compound, the Company was eligible to receive (i) an aggregate of up to $449.0&#160;million in pre-commercial milestone payments upon the achievement of specific clinical development and regulatory events with respect to the licensed compound for the first three indications in the United States, the European Union, or EU, and Japan; (ii) commercial milestone payments of up to $125.0&#160;million; and (iii) royalties at ascending low-double digit to mid-teen percentage rates, depending on the level of net sales Merck achieves worldwide for such licensed compound.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the terms of the Original Collaboration Agreement, the Company also granted Merck a worldwide, exclusive right to conduct research and development on, and to manufacture, use and commercialize, small molecule compounds identified or developed by Merck that have specified activity against any target that the Company researched or developed during the research phase of the collaboration and that, but for use of the Company&#x2019;s confidential and proprietary information, Merck would not have discovered. If Merck ultimately did not exercise its Merck license option to a collaboration compound the Company advanced through a human proof-of-concept study that was directed to any such target, Merck&#x2019;s research license for its own small molecule program with respect to such target would become non-exclusive, but it would retain an exclusive license to any small molecule compounds that it had, as of that time, identified and developed. Merck had sole responsibility for research and development of any of these small molecule compounds, at its own cost. The Company was eligible to receive milestone and royalty payments on small molecule compounds that were developed by Merck under such a license from the Company, in some cases at the same rates as those the Company was eligible to receive from Merck for a program that Merck licensed and that originated from the Company&#x2019;s own research and development efforts, provided that, but for use of the Company&#x2019;s confidential and proprietary information, Merck would not have discovered such small molecule compounds. However, the Company did not have the option to enter into a cost and profit share with respect to, or the option to co-detail, those small molecule compounds.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the terms of the Original Collaboration Agreement, during the three-month period before the end of the research phase as defined in the Original Collaboration Agreement, Merck had the right to review the Company&#x2019;s then-existing programs and to elect to designate one or more such programs and require the Company to continue to conduct research and development on such Merck-designated programs for up to three years, a period referred to as the Original Collaboration Agreement tail period. Merck would pay all of the Company&#x2019;s internal and external costs for its work on such Merck-designated programs during the Original Collaboration Agreement tail period, up to certain funding caps that decreased over the Original Collaboration Agreement tail period based on a specified percentage of certain funding actually provided to the Company by Merck during the last 12 months of the research phase as defined in the Original Collaboration Agreement. Merck also had the right to take over such Merck-designated programs and conduct such research and development activities itself or in partnership with a &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;third party, at its own cost, or to terminate the Original Collaboration Agreement tail period after a specified notice period. If Merck terminated the Original Collaboration Agreement tail period, it had the right to elect to transition to itself or a third-party partner, at its own cost, any clinical trials that were then being conducted in such Merck-designated programs. If the Company completed a human proof-of-concept trial in one of such Merck-designated programs during the Original Collaboration Agreement tail period or if Merck or its third-party partner completed a human proof-of-concept trial of a collaboration compound in one of such Merck-designated programs during or after the Original Collaboration Agreement tail period, then Merck would have the same one-time Merck license option to obtain an exclusive, worldwide license, on specified terms, to that collaboration compound, as well as to all its related compounds. Merck would lose its Merck license option rights at the end of the Original Collaboration Agreement tail period with respect to all programs for which no collaboration compound had completed a human proof-of-concept trial by such time, except for Merck-designated programs that Merck was continuing to use commercially reasonable efforts to research and develop.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company evaluated the Original Collaboration Agreement under ASC 606. The Company identified the following promised goods or services at the inception of the Original Collaboration Agreement: (i) a license to the Company&#x2019;s growth differentiation factor 15, or GDF15, agonist program; (ii) a license to pursue research and development and commercialization of small molecule compounds; (iii) the performance of research and development services for five years; (iv) two options to extend performance of the research and development services, each for &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg3NDM_431804b2-75ba-4b73-9b65-76e2e91db2d8"&gt;two&lt;/span&gt; additional years; and (v) Merck license options to obtain licenses to collaboration compounds and related compounds after proof-of-concept trials. The Company determined that the GDF15 agonist program license and small molecule program license were not distinct from the research and development services, resulting in these items being combined into a single performance obligation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company also considered whether such options created material rights in the contract and concluded that the fee attached to the exercise of such options approximated the SSP of the promised goods or services included in the options. Therefore, the Company concluded that such options did not give rise to material rights, were not performance obligations in the Original Collaboration Agreement and, if and when exercised, would be accounted for as separate arrangements under ASC 606.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Additionally, if a separate arrangement were created by the exercise of such an option, such amounts would be contingent on events outside of either party&#x2019;s control, such as products proving to be commercially viable and governmental agencies granting regulatory approval. Such contingencies and uncertainties resulted in the amounts being constrained and withheld from inclusion in the estimated transaction price of a separate arrangement. Consequently, the estimated transaction price related to the Original Collaboration Agreement was comprised of the upfront cash licensing fee of $94.0&#160;million and ongoing research and development reimbursements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Any fees associated with such options, including associated upfront fees, follow on funding fees and milestones, were not included in the transaction price related to the Original Collaboration Agreement as they were associated with options that were not material rights and, thus, were not performance obligations within the Original Collaboration Agreement. For example, in November 2018, Merck exercised its option for a license to further research and develop MK-3655, an agonistic antibody discovered by the Company that selectively activates fibroblast growth factor receptor 1c-beta-klotho, or FGFR1c/KLB, and other FGFR1c/KLB agonists and paid the Company $20.0 million. The $20.0 million license fee for MK-3655 was not included in the transaction price related to the Original Collaboration Agreement and was instead recognized in the period of exercise in the fourth quarter of 2018 as the Company had no further obligation related to that license. The Phase 3 clinical study for MK-3655 has not begun, and the Company has therefore not made an election as to whether it will participate in the cost and profit share or receive milestone and royalty payments with respect to MK-3655. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The transaction price associated with the initial five-year term of the Original Collaboration Agreement consisted of the $94.0&#160;million upfront fee and the funding amounts of up to $75.0 million per year for each of the first five years of the Original Collaboration Agreement. No milestones or other forms of consideration were included in the transaction price related to the Original Collaboration Agreement as those amounts were contingent upon Merck exercising an option for licenses on collaboration compounds and would, therefore, be pursuant to separate arrangements and not part of the Original Agreement estimated transaction price. As there was only one performance obligation in the Original Collaboration Agreement, the transaction price was allocated entirely to that performance obligation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At the end of the initial five-year term of the Original Collaboration Agreement, the remaining contract liability amount of $4.9 million related to the upfront license fee included within the transaction price as of December 31, 2019 was fully earned and recognized during the three months ended March 31, 2020. The Company has fully recognized revenue of approximately $388.1 million related to the single performance obligation associated with the initial five-year term of the Original Collaboration Agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Upon Merck exercising its option to extend the research phase of the collaboration through March 16, 2022, the Company deemed that a separate arrangement containing a two-year performance obligation to provide distinct research and development services was created on March 17, 2020. The transaction price of $170.0&#160;million for this two-year performance obligation under the Original Collaboration Agreement consisted of the potential funding of amounts of up to $75.0&#160;million per year plus the additional funding amount of $20.0&#160;million to be made during 2021 through to the first quarter of 2022 if the Company exceeded the $75.0&#160;million funding cap. The Company used a cost-based input method to calculate the corresponding amount of revenue to recognize. In applying the cost-based input measure of revenue recognition, the Company measured actual costs incurred relative to budgeted costs to fulfill this distinct two-year performance obligation. These costs consisted of Company employee full-time equivalent hours plus allowable external (third-party) costs incurred. Revenue was recognized based on actual costs incurred as a percentage of total budgeted costs as the Company completed its performance obligation applied to the transaction price. The Company re-evaluated the estimate of expected costs to satisfy the performance obligation each reporting period and made adjustments for any significant changes. In addition, the Company also considered any necessary adjustments in an effort to ensure that the transaction price was within the range of potential funding amounts as described above. As such, management applied considerable judgment in estimating expected costs as such costs were key inputs when applying the cost-based input method. As the Company&#x2019;s estimated measure of progress was updated at each reporting period and revenue was recognized on a cumulative catch-up basis, a significant change in the estimate of expected costs for the remainder of the contract term could have had a material impact on revenue recognized (including the possible reversal of previously recognized revenue) at each reporting period, as well as the related impact on contract assets and liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Since the transaction price under the Original Collaboration Agreement included an additional funding amount of $20.0&#160;million to be made during 2021 and in the first quarter of 2022, the timing of when the revenue was recognized for this additional funding amount for performance of the services and when this additional funding amount can be billed resulted in the recognition of a related party contract asset of $4.6&#160;million at March 31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;The Amended Collaboration Agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the Original Collaboration Agreement, Merck was required to notify the Company no later than March 17, 2021 of its unilateral decision whether to exercise its option to extend the research phase of the collaboration for an additional two-year term through March 16, 2024. In March 2021, Merck initiated discussions with the Company with respect to elements of the ongoing collaboration that might be optimized to better address the evolving interests and priorities of both the Company and Merck. After such discussions, on June 30, 2021, the Company and Merck entered into the Amended Collaboration Agreement. Pursuant to the Amended Collaboration Agreement, the prior two-year extension of the research phase under the Original Agreement was deemed to end on March 31, 2021, while a new three-year research phase commenced on April 1, 2021. Under the Original Collaboration Agreement, all of the Company&#x2019;s research and development programs, both those existing at the time the Company entered into the Original Collaboration Agreement and those the Company worked on during the research phase of the collaboration, other than aldafermin, were included within the scope of the collaboration. Under the Amended Collaboration Agreement, the scope of the collaboration and the resulting programs for which Merck has the Merck license option was narrowed. The collaboration as conducted under the Amended Collaboration Agreement, or the continuing collaboration, is focused primarily on the identification, research and development of collaboration compounds directed to targets of interest to Merck in the fields of ophthalmology and cardiovascular or metabolic, or CVM, disease, including heart failure, as well as certain laboratory testing and other activities on compounds that are directed to one of up to two undisclosed targets outside of the fields of ophthalmology and CVM disease, referred to as the lab programs. The ophthalmology compounds in the continuing collaboration include NGM621, an ophthalmology compound in a Phase 2 clinical trial, and its related compounds, and compounds directed against two other undisclosed ophthalmology targets and their related compounds. Collaboration compounds that remain within the scope of the continuing collaboration under the Amended Collaboration Agreement are referred to as continuing collaboration compounds. Given the narrowed research scope under the Amended Collaboration Agreement, the Company has the right, in its sole discretion, to independently research, develop and commercialize the collaboration compounds known as NGM120, NGM707, NGM831 and NGM438, their related compounds and all other preclinical and research assets that the Company researched or developed under the Original Collaboration Agreement but that are not included within the research and development scope of the continuing collaboration, which are referred to as the released NGM compounds. Merck retained the right to receive royalties at low single-digit rates on the sales of any released NGM compounds that receive regulatory approval and, if the Company decides during a certain time period to engage in a formal partnering process for a released NGM compound or negotiations regarding a license or asset sale of a released NGM compound, the Company is obligated to notify Merck, provide Merck with certain information and engage in good faith, non-exclusive negotiations with respect to such released NGM compound with Merck at Merck&#x2019;s request.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the Amended Collaboration Agreement, Merck continues to have a Merck license option, as it did under the Original Agreement, to each continuing collaboration compound that is identified, researched and developed under the Amended Collaboration Agreement and reaches the specified option exercise point for such continuing collaboration compound as described below, and to its related compounds (each such continuing collaboration compound and its related compounds are referred to generally as a continuing program). In addition, under the terms of the Amended Collaboration Agreement, new CVM-related programs may be added to the continuing collaboration if recommended by the Company and selected by Merck, and Merck would have a Merck license option to such CVM-related continuing program. Merck has a one-time right to exercise its Merck license option, during the research phase or a tail period following such research phase, as applicable, for any continuing collaboration compound on a continuing program-by-continuing program basis when the Company or Merck achieves the specified Merck license option exercise point. The Merck license option exercise point for collaboration compounds under the Original Collaboration Agreement was the completion of a human proof-of-concept trial. This generally continues to be the Merck license option exercise point under the Amended Collaboration Agreement for continuing collaboration compounds that are directed to ophthalmology targets, including NGM621 and its related compounds and all of the continuing collaboration compounds from two other ophthalmology continuing programs directed against undisclosed ophthalmology targets and their related compounds (including NGM621 and its related compounds, collectively referred to as the continuing ophthalmology collaboration compounds). Upon the completion of the ongoing Phase 2 NGM621 CATALINA clinical trial, Merck will have an additional one-time option to obtain an exclusive, worldwide license to all of the continuing ophthalmology collaboration compounds together, referred to as the ophthalmology bundle option. If Merck does not exercise this one-time ophthalmology bundle option for all continuing ophthalmology collaboration compounds, it may nevertheless exercise its regular Merck license option with respect to NGM621 and its related compounds at such time, and it may also exercise its regular Merck license option for the continuing ophthalmology collaboration compounds from each of the other two programs if a continuing ophthalmology collaboration compound from such continuing program completes a human proof-of-concept trial. Unlike the Original Collaboration Agreement, the Merck license option exercise point for a continuing collaboration compound from the CVM-related continuing programs or the lab programs will be the designation by Merck of such continuing collaboration compound as a research program development candidate that Merck intends to progress into preclinical development.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As was the case under the Original Collaboration Agreement, under the Amended Collaboration Agreement, if Merck exercises a Merck license option and obtains the relevant exclusive, worldwide license for a continuing collaboration compound and its related compounds, Merck will pay an option exercise fee to the Company and will be responsible, at its own cost, for any further development and commercialization activities for continuing collaboration compounds within that licensed continuing program. In such case, the Company will have the option to receive milestones and royalty payments or, in certain cases, to co-fund development and participate in a global cost and profit share arrangement of up to 50%, with an additional option to co-detail any such licensed continuing collaboration compound in the United States under the same terms as set forth in the Original Collaboration Agreement. Except for the ophthalmology bundle option, the amount of the option exercise fees for continuing ophthalmology collaboration compounds upon completion of a human proof-of-concept trial remains the same under the Amended Collaboration Agreement as under the Original Collaboration Agreement. If Merck exercises the ophthalmology bundle option, it will pay the Company either $40.0&#160;million or $45.0&#160;million as the Merck license option exercise fee, depending upon the stage of development of one of the two earlier stage ophthalmology programs that is included in the ophthalmology bundle option. Under the Amended Collaboration Agreement, if Merck exercises the Merck license option for a continuing collaboration compound from a CVM-related continuing program or a lab program, Merck will pay the Company a $6.0&#160;million option exercise fee at the time of selection to progress such licensed continuing collaboration compound or any of its related compounds into preclinical development and an additional $10.0&#160;million milestone payment if such continuing collaboration compounds or one of its related compounds subsequently completes a human proof-of-concept trial.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the Amended Collaboration Agreement, the parties&#x2019; rights and obligations with respect to MK-3655 and related FGFR1c/KLB agonists for which Merck exercised its Merck license option in November 2018 did not change.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the Amended Collaboration Agreement, Merck will provide up to $86.0&#160;million in research funding for the four calendar quarters ending March 31, 2022, which includes the remaining $16.0&#160;million of the up to $20.0&#160;million in additional payments Merck agreed to pay as part of exercising its first option to extend the research phase of the collaboration under the Original Collaboration Agreement for two years through March 16, 2022. The Company is obligated to use commercially reasonable efforts to expend $35.0&#160;million of such $86.0&#160;million in funding during the same time frame on the ophthalmology, CVM-related and lab continuing programs. The Company is permitted to use the remainder of the $86.0&#160;million in research funding provided by Merck during such &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;time frame to advance the released NGM compounds. During the remaining two years of the research phase after March 2022, Merck will provide up to a total of $20.0&#160;million in research funding for the ophthalmology, CVM-related and lab continuing programs. Merck will also fund certain research and development costs related to NGM621, subject to certain limitations, until the earlier of the remaining two years of the research phase after March 2022 or until Merck exercises, or decides not to exercise, its license option with respect to NGM621 alone or bundled with the other continuing ophthalmology compounds. After March 2022, the Company, using its own funding, is required to use commercially reasonable efforts to research and develop a specific product candidate directed to a specific ophthalmology target to be ready for starting investigational new drug application-, or IND-, enabling studies by March 31, 2023. If Merck exercises its regular Merck license option with respect to NGM621 or the ophthalmology bundle option for all of the continuing ophthalmology collaboration compounds upon completion of the ongoing Phase 2 CATALINA clinical trial of NGM621 and pays the applicable option exercise fee to the Company, then the Company will be obligated to reinvest $5.0&#160;million or up to $15.0&#160;million, respectively, of such option fee to fund research on the ophthalmology and CVM-related continuing programs.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the Amended Collaboration Agreement, the research phase for the ophthalmology continuing programs will end no later than March 31, 2024. The research phase for the CVM-related continuing programs will also continue until March 31, 2024, unless the parties mutually agree to extend the research phase to March 31, 2026, in which case Merck will provide up to a total of $20.0&#160;million in research funding during those additional two years. The research phase for the lab programs will end no later than December 31, 2022.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As under the Original Collaboration Agreement, Merck has the right under the Amended Collaboration Agreement to review the then-ongoing continuing programs in the three-month period before the end of applicable research phase and to elect to designate one or more continuing programs for which research and development would continue to be conducted, until the applicable Merck license option exercise point is reached, for up to three years after the end of such research phase, with the possibility of extension if the Company is conducting ongoing ophthalmology clinical trials, if Merck is using commercially reasonable efforts to progress one or more ophthalmology continuing programs or if Merck determines to continue progressing a CVM-related continuing program or lab program toward the nomination of a research program development candidate, and any such extension is referred to as an Amended Collaboration Agreement tail period. Under the Amended Collaboration Agreement, the Amended Collaboration Agreement tail period, if any, for the ophthalmology continuing programs would be separate from the Amended Collaboration Agreement tail period, if any, for the CVM-related continuing programs or any lab program, and Merck would be primarily responsible for performing all research and development activities, itself or through third-party contractors, during the Amended Collaboration Agreement tail period, if any, for the CVM-related continuing programs or any lab program.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company concluded that the Amended Collaboration Agreement is a separate arrangement containing a three-year performance obligation to provide distinct research and development services in accordance with ASC 606. The total transaction price under the Amended Collaboration Agreement is $124.7&#160;million and represents the sum of potential funding amounts, including $86.0&#160;million in research funding for the four calendar quarters ending March 31, 2022, $20.0&#160;million in research funding for the ophthalmology and CVM-related continuing programs during the remaining two years of the research phase after March 2022 and $18.7&#160;million in estimated NGM621 reimbursable expenses also during the remaining two years of the research phase after March 2022. The Company will continue to re-evaluate the transaction price as uncertain events are resolved or other changes in circumstances occur. The Company continues performing a series of research and development services in the area of both the continuing collaboration compounds and the released NGM compounds and has one performance obligation across all continuing programs. The Company will continue to use the cost-based input method to calculate the amount of revenue to recognize as services are being rendered from April 1, 2021 through March 31, 2024. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company considered whether the Merck license option and the ophthalmology bundle option created material rights in the contract and concluded that the fee attached to the exercise of such options approximated the SSP of the promised goods or services included in the options. Therefore, the Company concluded that such options did not give rise to material rights, were not performance obligations in the Amended Collaboration Agreement and, if and when exercised, would be accounted for as separate arrangements under ASC 606. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;If Merck exercises its regular Merck license option for NGM621 or the ophthalmology bundle option for all of the continuing ophthalmology collaboration compounds upon completion of the Phase 2 CATALINA clinical trial and pays the applicable Merck license option exercise fee to the Company, this would not result in a modification of the contract as total contract consideration and the Company's performance obligation under the Amended Collaboration Agreement will not change.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of March 31, 2021, the Company had a contract asset of $4.6&#160;million under the prior two-year extension of the research phase under the Original Collaboration Agreement, which, under the Amended Collaboration Agreement, was no longer billable to Merck at any point and therefore was recorded as a reduction in both the transaction price under the Original Collaboration Agreement and revenue on June 30, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A breakout of the milestone payments in connection with the potential achievement of certain clinical development events for each of the first three indications is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;First&lt;br/&gt;Indication&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Second&lt;br/&gt;Indication&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Third&lt;br/&gt;Indication&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Upon administration of an applicable product to the first patient in the first Phase 3 clinical trial for such product for the given indication&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Upon first completion of a proof-of-concept trial for a CVM-related research program development candidate &lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Upon first completion of a proof-of-concept trial for a certain research development candidate for a lab program&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;A breakout of the aggregate milestone payments in connection with the potential achievement of both acceptance of an application for and receipt of regulatory approval for each of the first three indications, for each of the three geographic areas, is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.988%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.579%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;First&lt;br/&gt;Indication&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Second&lt;br/&gt;Indication&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Third&lt;br/&gt;Indication&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;75,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;56,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;37,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;168,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;European Union&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;60,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;45,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;30,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;135,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Japan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;30,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;22,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;15,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;67,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;165,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;123,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;82,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;371,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Summary of Related Party Revenue&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognized revenue from its collaboration and license agreements as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Related party revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;77,882&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;87,368&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;103,544&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the year ended December&#160;31, 2021, the Company recognized collaboration and license revenue of $77.9 million primarily related to reimbursable research and development activities associated with the performance obligation for the two-year extension period through March 31, 2021 under the Original Collaboration Agreement and from April 1, 2021 through December&#160;31, 2021 under the Amended Collaboration Agreement, all of which were recognized using the cost-based input model. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the year ended December&#160;31, 2020, the Company recognized collaboration and license revenue under the Original Collaboration Agreement of $87.4 million primarily related to reimbursable research and development activities, including $61.8 million associated with the performance obligation for the prior two-year extension period under the Original Collaboration Agreement, and $4.9 million related to collaboration and license revenue earned under the initial five-year term that ended in March 2020. Revenue recognized related to the reimbursable research and development activities were recognized using the cost-based input model related to research and development activities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the year ended December&#160;31, 2019, the Company recognized collaboration and license revenue under the Original Collaboration Agreement of $103.5 million, of which $24.0 million&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;was recognized from the upfront license fee by applying the cost-based input measure of revenue recognition in accordance with ASC 606 and the remaining balance related to research and development activities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Related Party Contract Assets and Liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amounts recognized as revenue prior to the Company having an unconditional right (or a right that is conditioned only on the passage of time) to receipt are recorded as contract assets in the Company's consolidated balance sheets. If the Company expects to have an unconditional right to receive the consideration in the next twelve months, the contract asset will be classified in current assets. As of December&#160;31, 2021, the Company did not have a related party contract asset. As of December&#160;31, 2020, the Company had a related party contract asset of $6.1 million. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amounts received prior to satisfying the revenue recognition criteria are recorded as contract liabilities in the Company&#x2019;s consolidated balance sheets. If the related performance obligation is expected to be satisfied within the next twelve months, the contract liability will be classified in current liabilities. As of December&#160;31, 2021, the Company had a contract liability of $17.8 million. The Company did not have a contract liability as of December&#160;31, 2020.&lt;/span&gt;&lt;/div&gt;</us-gaap:CollaborativeArrangementDisclosureTextBlock>
    <ngm:CollaborativeArrangementPercentOfStockOwnedByCounterparty
      contextRef="i8952037b43ec426584b47c6dfa41b303_I20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE3MDIxODI_3e3d0009-a290-4762-9110-b7203c778f06"
      unitRef="number">0.166</ngm:CollaborativeArrangementPercentOfStockOwnedByCounterparty>
    <ngm:ResearchAndDevelopmentServicePerformancePeriod
      contextRef="i7349e63f52244a4983e658f30828b28a_D20150101-20151231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzM4NDgyOTA3NzAyMTc_0a3d7ac4-41ca-4063-ad17-28a08d4481c1">P5Y</ngm:ResearchAndDevelopmentServicePerformancePeriod>
    <ngm:NumberOfOptionsToExtendPerformanceOfResearchProgram
      contextRef="iaad76ce32ab1489ab52d1de7a7358599_I20151231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2NDg3OTI_4c926b64-e36f-474c-adbc-1d58bdcb1ec2"
      unitRef="option">2</ngm:NumberOfOptionsToExtendPerformanceOfResearchProgram>
    <ngm:ResearchAndDevelopmentPerformanceAdditionalOptionExtendTerm
      contextRef="i561344f0614e4624b069d55c07962556_D20150101-20151231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTgyNjg_8afe083b-1a53-4aff-b2b7-22975b9c199d">P2Y</ngm:ResearchAndDevelopmentPerformanceAdditionalOptionExtendTerm>
    <ngm:AmountOfFundReceivedForResearchActivities
      contextRef="i561344f0614e4624b069d55c07962556_D20150101-20151231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk0NjU_2d4d8e0a-33a3-4c37-a455-e18b453bef31"
      unitRef="usd">20000000</ngm:AmountOfFundReceivedForResearchActivities>
    <ngm:CollaborativeArrangementAnnualFundingAmountOverAgreementTerm
      contextRef="ie0768bb9a5ca4d8aacde875819c24619_D20150101-20151231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzE2NDkyNjc0OTMzNzU_eb0faa54-634d-4504-86a1-f95da05d3d29"
      unitRef="usd">75000000</ngm:CollaborativeArrangementAnnualFundingAmountOverAgreementTerm>
    <ngm:ResearchAndDevelopmentServicePerformancePeriod
      contextRef="i7349e63f52244a4983e658f30828b28a_D20150101-20151231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzM4NDgyOTA3NzAyMzQ_4e322ce7-e915-4068-bc02-521f85b2b27d">P5Y</ngm:ResearchAndDevelopmentServicePerformancePeriod>
    <ngm:AmountOfFundReceivedForResearchActivities
      contextRef="i561344f0614e4624b069d55c07962556_D20150101-20151231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk0Njk_2d4d8e0a-33a3-4c37-a455-e18b453bef31"
      unitRef="usd">20000000</ngm:AmountOfFundReceivedForResearchActivities>
    <ngm:AmountOfAdditionalFundReceivedForResearchActivities
      contextRef="i20a525d666f3426b92f72f61d98087b4_D20210101-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg2NDk_b009620c-3841-4f81-b0d5-fdeb847e19e9"
      unitRef="usd">20000000</ngm:AmountOfAdditionalFundReceivedForResearchActivities>
    <ngm:UpfrontLicenseFee
      contextRef="i6321ef9097fd4ab880e1a108802672e9_D20181101-20181130"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg2Nzg_17b432bd-fe1f-4005-93c4-a7d75dc4e523"
      unitRef="usd">20000000</ngm:UpfrontLicenseFee>
    <ngm:ShareOfGlobalDevelopmentCostsPercentage
      contextRef="if2e8e133d08f40c5ba9e65b412afd7d5_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk1MDc_976ea1ac-f5f1-4179-af53-2d6010feaa9d"
      unitRef="number">0.25</ngm:ShareOfGlobalDevelopmentCostsPercentage>
    <ngm:EligibleDevelopmentAndRegulatoryMilestonePaymentsReceivable
      contextRef="i743c02adf6064a66b3e0c3caf7c05d81_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk0OTE_261df49b-0b5f-4199-ac6e-19fdb6938088"
      unitRef="usd">449000000</ngm:EligibleDevelopmentAndRegulatoryMilestonePaymentsReceivable>
    <ngm:CommercialMilestonePaymentsReceived
      contextRef="i743c02adf6064a66b3e0c3caf7c05d81_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk0OTk_d67f76f1-1525-4e43-ae5d-c33d74c401f8"
      unitRef="usd">125000000</ngm:CommercialMilestonePaymentsReceived>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="i98a68c1820fc417bb07e86d511ac1800_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk1MTE_6b9bfbc9-9d94-4a62-a07a-59199f7e759c">P3Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <ngm:ResearchAndDevelopmentServicePerformancePeriod
      contextRef="i7349e63f52244a4983e658f30828b28a_D20150101-20151231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg3MTc_e8b33645-cdb4-449d-b041-08fe8ce28c44">P5Y</ngm:ResearchAndDevelopmentServicePerformancePeriod>
    <ngm:NumberOfOptionsToExtendPerformanceOfResearchProgram
      contextRef="iaad76ce32ab1489ab52d1de7a7358599_I20151231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg3MzE_1b9f27fd-3592-46dc-804f-76052f2eee52"
      unitRef="option">2</ngm:NumberOfOptionsToExtendPerformanceOfResearchProgram>
    <ngm:UpfrontFee
      contextRef="if2e8e133d08f40c5ba9e65b412afd7d5_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk1MTY_f3dd4ae1-d24c-4d3c-8bc3-f35264d7bb44"
      unitRef="usd">94000000</ngm:UpfrontFee>
    <ngm:LicenseFeeReceivable
      contextRef="icf2c8ef831eb4c17b0eff8bbc31cd282_I20181130"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzE2NDkyNjc0OTM0MjA_fd7f14d4-800e-4191-9394-313d3b44e5a4"
      unitRef="usd">20000000</ngm:LicenseFeeReceivable>
    <ngm:LicenseFeeReceivable
      contextRef="icf2c8ef831eb4c17b0eff8bbc31cd282_I20181130"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk1MzY_fd7f14d4-800e-4191-9394-313d3b44e5a4"
      unitRef="usd">20000000</ngm:LicenseFeeReceivable>
    <ngm:ResearchAndDevelopmentServicePerformancePeriod
      contextRef="i7349e63f52244a4983e658f30828b28a_D20150101-20151231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzM4NDgyOTA3NzAyMzU_fdf8334c-9b0b-4b01-bcb7-3b2b0dfd3350">P5Y</ngm:ResearchAndDevelopmentServicePerformancePeriod>
    <ngm:UpfrontFee
      contextRef="if2e8e133d08f40c5ba9e65b412afd7d5_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk1NDA_f3dd4ae1-d24c-4d3c-8bc3-f35264d7bb44"
      unitRef="usd">94000000</ngm:UpfrontFee>
    <ngm:CollaborativeArrangementAnnualFundingAmountOverAgreementTerm
      contextRef="ie0768bb9a5ca4d8aacde875819c24619_D20150101-20151231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk1NDU_eb0faa54-634d-4504-86a1-f95da05d3d29"
      unitRef="usd">75000000</ngm:CollaborativeArrangementAnnualFundingAmountOverAgreementTerm>
    <ngm:ResearchAndDevelopmentServicePerformancePeriod
      contextRef="i7349e63f52244a4983e658f30828b28a_D20150101-20151231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg3NzE_469c42b3-a309-4700-a57b-b95c34bd18e1">P5Y</ngm:ResearchAndDevelopmentServicePerformancePeriod>
    <ngm:ResearchAndDevelopmentServicePerformancePeriod
      contextRef="i7349e63f52244a4983e658f30828b28a_D20150101-20151231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzM4NDgyOTA3NzAyMzY_304b1b86-454f-4eb9-8119-fdeff9042cef">P5Y</ngm:ResearchAndDevelopmentServicePerformancePeriod>
    <us-gaap:ContractWithCustomerLiability
      contextRef="id8c0c38ba15c4034b9f37ddeb1c16a90_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk1NDk_19b1e6ed-7116-4535-9ca7-06f2eacabd7d"
      unitRef="usd">4900000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i914bcdcf60324267950653ee698e808a_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk1NTc_f8e3935c-f402-4685-a188-e93e3e48289e"
      unitRef="usd">388100000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <ngm:ResearchAndDevelopmentServicePerformancePeriod
      contextRef="i7349e63f52244a4983e658f30828b28a_D20150101-20151231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzM4NDgyOTA3NzAyMzc_5bebab86-a3a3-463d-9574-db355b3be18e">P5Y</ngm:ResearchAndDevelopmentServicePerformancePeriod>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="iceb83a4ccf0a47538dae669cda033b90_D20200317-20200317"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg3OTM_2fea21b4-ffba-4b40-a2a3-5e1064c6c6f0">P2Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i22a67c0165364989b9738d1ce93a4c7a_I20200317"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg4MTA_4a52af86-d04e-41af-bd57-78eef173e267"
      unitRef="usd">170000000</us-gaap:RevenueRemainingPerformanceObligation>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="iceb83a4ccf0a47538dae669cda033b90_D20200317-20200317"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg5Mjk_a583e860-ef4a-4925-8ffa-6c7b1a6abd4c">P2Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <ngm:CollaborativeArrangementAnnualFundingAmountOverAgreementTerm
      contextRef="iceb83a4ccf0a47538dae669cda033b90_D20200317-20200317"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzM4NDgyOTA3NzAyNTU_3b30d618-38ae-4173-a966-a76a2604a676"
      unitRef="usd">75000000</ngm:CollaborativeArrangementAnnualFundingAmountOverAgreementTerm>
    <ngm:EligibleMilestonePaymentsReceivable
      contextRef="ic53e8e8776c94a62932a223e78fd1958_D20220101-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg4NDA_fea3b826-c4c5-49fb-8306-f59f83075f07"
      unitRef="usd">20000000</ngm:EligibleMilestonePaymentsReceivable>
    <ngm:CollaborativeArrangementAnnualFundingAmountOverAgreementTerm
      contextRef="iceb83a4ccf0a47538dae669cda033b90_D20200317-20200317"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg4Njk_56fc3afa-bb07-4c81-a769-38a5b65abfdc"
      unitRef="usd">75000000</ngm:CollaborativeArrangementAnnualFundingAmountOverAgreementTerm>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="iceb83a4ccf0a47538dae669cda033b90_D20200317-20200317"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg5NDc_cfe96714-2a0a-42c6-87c7-a6141876abeb">P2Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <ngm:EligibleMilestonePaymentsReceivable
      contextRef="ic53e8e8776c94a62932a223e78fd1958_D20220101-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg4OTg_8f93ede3-305f-47a5-a206-3b8dfce2de25"
      unitRef="usd">20000000</ngm:EligibleMilestonePaymentsReceivable>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="i54306b60ceb548ddb8180dd68311fe4d_I20210331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE2Nzk1Nzg_f73de698-6564-4126-8d0f-20fbd4e855a6"
      unitRef="usd">4600000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="id20bb0a6d5d74c29bb5ef497f95adf75_D20210331-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg5NjU_422906c9-8112-42b4-a5ae-8c273c8da835">P2Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="id20bb0a6d5d74c29bb5ef497f95adf75_D20210331-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTg5ODM_215186f8-42ce-45fd-9a6b-f42321459f41">P2Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="ide80e0a22e144561aac2b4e535ea3ac9_D20210401-20210401"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkwMDU_093810df-b2c6-449d-92b6-5e5070430bc8">P3Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <ngm:ResearchAndDevelopmentCollaborationAgreementGlobalDevelopmentCostsFundedPercentage
      contextRef="i70da91517440498ba3491726d00d69df_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkwMTE_3f24c9f5-8e91-4558-b384-451ca28ae63d"
      unitRef="number">0.50</ngm:ResearchAndDevelopmentCollaborationAgreementGlobalDevelopmentCostsFundedPercentage>
    <ngm:ResearchAndDevelopmentOptionExerciseFee
      contextRef="i5acacaa20cb34179a3f9d2c10eebaf33_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkwMzA_3deeef67-5b78-427a-bfc9-fde47d4c5779"
      unitRef="usd">40000000</ngm:ResearchAndDevelopmentOptionExerciseFee>
    <ngm:ResearchAndDevelopmentOptionExerciseFee
      contextRef="i0d3f4130835849d583d91969bd4af9db_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkwNTk_d2c6518d-8801-49a5-a354-85d4ba8c26c2"
      unitRef="usd">45000000</ngm:ResearchAndDevelopmentOptionExerciseFee>
    <ngm:ResearchAndDevelopmentOptionExerciseFee
      contextRef="ie69d7f88fcf0484f94aec8a5d8500814_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkwODc_106714c2-4cb1-4dd8-867b-0ef28a05bd33"
      unitRef="usd">6000000</ngm:ResearchAndDevelopmentOptionExerciseFee>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents
      contextRef="i59e1b18fe35c4d6ebefd7d29b26fe10c_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkxMTU_9ef39612-5a83-4a3e-80ad-853287598b4e"
      unitRef="usd">10000000</ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents>
    <ngm:AmountOfFundReceivedForResearchActivities
      contextRef="i0c396e63e053490194a213bfee874abb_D20210401-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzM4NDgyOTA3NzAyODg_a140cd4d-9bac-4850-9e0d-3b517683a241"
      unitRef="usd">86000000</ngm:AmountOfFundReceivedForResearchActivities>
    <ngm:ResearchCollaborationAndLicenseAgreementsRemainingExtensionFee
      contextRef="i70da91517440498ba3491726d00d69df_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkxNDQ_ad06e79f-166e-44c5-8948-d63d5053b4c4"
      unitRef="usd">16000000</ngm:ResearchCollaborationAndLicenseAgreementsRemainingExtensionFee>
    <ngm:ResearchCollaborationAndLicenseAgreementsExtensionFee
      contextRef="i70da91517440498ba3491726d00d69df_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzM4NDgyOTA3NzAzMTc_7cd8054c-a3e2-447c-a4fc-64c418191343"
      unitRef="usd">20000000</ngm:ResearchCollaborationAndLicenseAgreementsExtensionFee>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="id20bb0a6d5d74c29bb5ef497f95adf75_D20210331-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkxODE_ce2c165c-f003-4954-89dc-0be769d517f9">P2Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <ngm:AmountOfFundReceivedForResearchActivitiesRequiredExpendableAmount
      contextRef="i70da91517440498ba3491726d00d69df_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkyMDE_e5c7d424-43da-4a36-bbed-34726d6d5d37"
      unitRef="usd">35000000</ngm:AmountOfFundReceivedForResearchActivitiesRequiredExpendableAmount>
    <ngm:AmountOfFundReceivedForResearchActivities
      contextRef="i0c396e63e053490194a213bfee874abb_D20210401-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE3MDQ0Nzg_a140cd4d-9bac-4850-9e0d-3b517683a241"
      unitRef="usd">86000000</ngm:AmountOfFundReceivedForResearchActivities>
    <ngm:AmountOfFundReceivedForResearchActivities
      contextRef="i0c396e63e053490194a213bfee874abb_D20210401-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzM4NDgyOTA4Mzk5MTg_3d1cbefe-b521-4aa0-99f1-461df5b404cf"
      unitRef="usd">86000000</ngm:AmountOfFundReceivedForResearchActivities>
    <ngm:ResearchAndDevelopmentOptionRemainingExtensionTerm
      contextRef="i70da91517440498ba3491726d00d69df_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkyNTg_54d01ef8-18f9-46ce-a2c1-55d408da30d1">P2Y</ngm:ResearchAndDevelopmentOptionRemainingExtensionTerm>
    <ngm:AmountOfAdditionalFundReceivedForResearchActivities
      contextRef="i0c396e63e053490194a213bfee874abb_D20210401-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkyNzg_d1058f84-4874-4f0f-8c82-952503627894"
      unitRef="usd">20000000</ngm:AmountOfAdditionalFundReceivedForResearchActivities>
    <ngm:ResearchAndDevelopmentOptionExerciseFeeReinvestmentAmount
      contextRef="i0bf6491d868641aa9c7347b04b1315ee_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkzMDY_991d5ca3-8afe-4034-afd9-62eef57c81a2"
      unitRef="usd">5000000</ngm:ResearchAndDevelopmentOptionExerciseFeeReinvestmentAmount>
    <ngm:ResearchAndDevelopmentOptionExerciseFeeReinvestmentAmount
      contextRef="i38a1237f61904f619fe91ef517fcaee3_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkzMzQ_194a3300-7a97-4478-82fa-60cb21e51f1e"
      unitRef="usd">15000000</ngm:ResearchAndDevelopmentOptionExerciseFeeReinvestmentAmount>
    <ngm:ResearchCollaborationAndLicenseAgreementsExtensionFee
      contextRef="i7349e63f52244a4983e658f30828b28a_D20150101-20151231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkzNjM_e1c5f094-9844-476b-8332-193a0b446151"
      unitRef="usd">20000000</ngm:ResearchCollaborationAndLicenseAgreementsExtensionFee>
    <ngm:ResearchAndDevelopmentOptionRemainingExtensionTerm
      contextRef="i70da91517440498ba3491726d00d69df_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTk0MDA_f37995fd-2b83-487b-a398-71233b4b6cde">P2Y</ngm:ResearchAndDevelopmentOptionRemainingExtensionTerm>
    <ngm:CollaborativeArrangementReviewTerm
      contextRef="i70da91517440498ba3491726d00d69df_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTkyMzA_f5796338-53d8-480c-9472-c0bcff6d33c5">P3Y</ngm:CollaborativeArrangementReviewTerm>
    <ngm:ResearchAndDevelopmentPerformanceObligationPeriod
      contextRef="i70da91517440498ba3491726d00d69df_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTk0MjY_5654f70f-40c1-4394-9305-a6dc9627cffb">P3Y</ngm:ResearchAndDevelopmentPerformanceObligationPeriod>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i72d95e40a99e45b193081c4711cfc5e2_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE3NzA4MjQ_c4b9abe7-c0d2-4ba2-b6c0-e1b1ea4cd35f"
      unitRef="usd">124700000</us-gaap:RevenueRemainingPerformanceObligation>
    <ngm:AmountOfFundReceivedForResearchActivities
      contextRef="i0c396e63e053490194a213bfee874abb_D20210401-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTk0NDI_bbc37a06-bbec-4ccf-958e-f7e44bbcb197"
      unitRef="usd">86000000</ngm:AmountOfFundReceivedForResearchActivities>
    <ngm:AmountOfAdditionalFundReceivedForResearchActivities
      contextRef="i0c396e63e053490194a213bfee874abb_D20210401-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTk0NzE_4b7594dc-a2ba-47e6-8018-0a4b7700225a"
      unitRef="usd">20000000</ngm:AmountOfAdditionalFundReceivedForResearchActivities>
    <ngm:ResearchAndDevelopmentOptionRemainingExtensionTerm
      contextRef="i70da91517440498ba3491726d00d69df_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTk1MDg_9e3dc899-ea57-440a-bb59-ad241bfcbba0">P2Y</ngm:ResearchAndDevelopmentOptionRemainingExtensionTerm>
    <ngm:ResearchAndDevelopmentReimbursableExpense
      contextRef="ied1cae7de40a40f49f44becfca706623_D20220401-20240331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE3NzA4Mzc_d0dc9b78-334f-4702-83bb-8ac9f87dc4a9"
      unitRef="usd">18700000</ngm:ResearchAndDevelopmentReimbursableExpense>
    <ngm:ResearchAndDevelopmentOptionRemainingExtensionTerm
      contextRef="i70da91517440498ba3491726d00d69df_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTk1MzY_813b6b25-958a-4a8d-a930-577cd92c1df8">P2Y</ngm:ResearchAndDevelopmentOptionRemainingExtensionTerm>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="i54306b60ceb548ddb8180dd68311fe4d_I20210331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTk1NTU_c16f2243-fc17-4da1-894f-c86140c380e0"
      unitRef="usd">4600000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="id20bb0a6d5d74c29bb5ef497f95adf75_D20210331-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTk1ODU_d8cb5a41-12d8-48ed-876d-3fe16610a9b6">P2Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <us-gaap:ScheduleOfCollaborativeArrangementsAndNoncollaborativeArrangementTransactionsTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzE5OTI3_28c17041-90a8-4170-801a-400b394f5246">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A breakout of the milestone payments in connection with the potential achievement of certain clinical development events for each of the first three indications is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.637%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.640%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;First&lt;br/&gt;Indication&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Second&lt;br/&gt;Indication&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Third&lt;br/&gt;Indication&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Upon administration of an applicable product to the first patient in the first Phase 3 clinical trial for such product for the given indication&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Upon first completion of a proof-of-concept trial for a CVM-related research program development candidate &lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Upon first completion of a proof-of-concept trial for a certain research development candidate for a lab program&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;A breakout of the aggregate milestone payments in connection with the potential achievement of both acceptance of an application for and receipt of regulatory approval for each of the first three indications, for each of the three geographic areas, is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.988%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.579%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;First&lt;br/&gt;Indication&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Second&lt;br/&gt;Indication&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Third&lt;br/&gt;Indication&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;75,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;56,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;37,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;168,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;European Union&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;60,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;45,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;30,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;135,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Japan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;30,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;22,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;15,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;67,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;165,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;123,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;82,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;371,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfCollaborativeArrangementsAndNoncollaborativeArrangementTransactionsTableTextBlock>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents
      contextRef="id34c859e660c45f189f1749f91ba11a7_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTo1OTc3MDY4ODgxNTU0NDU5YThlZGU3ZjgzOTIwY2RlNS90YWJsZXJhbmdlOjU5NzcwNjg4ODE1NTQ0NTlhOGVkZTdmODM5MjBjZGU1XzEtMS0xLTEtMTM2MTI_ccd02c1c-cffb-4993-9212-670b8dbeb296"
      unitRef="usd">35000000</ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents
      contextRef="i4ab125d0d0d04284afdd017157027e0e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTo1OTc3MDY4ODgxNTU0NDU5YThlZGU3ZjgzOTIwY2RlNS90YWJsZXJhbmdlOjU5NzcwNjg4ODE1NTQ0NTlhOGVkZTdmODM5MjBjZGU1XzEtMy0xLTEtMTM2MTI_65eef7e4-01aa-497d-af6c-974f931a2985"
      unitRef="usd">25250000</ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents
      contextRef="i982cde199cca400b922b84a772bd153d_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTo1OTc3MDY4ODgxNTU0NDU5YThlZGU3ZjgzOTIwY2RlNS90YWJsZXJhbmdlOjU5NzcwNjg4ODE1NTQ0NTlhOGVkZTdmODM5MjBjZGU1XzEtNS0xLTEtMTM2MTI_3336719e-8fda-478d-97d2-f776101ef8d7"
      unitRef="usd">17500000</ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents
      contextRef="ifc37e31d0d444314b53bef9325ca238f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTo1OTc3MDY4ODgxNTU0NDU5YThlZGU3ZjgzOTIwY2RlNS90YWJsZXJhbmdlOjU5NzcwNjg4ODE1NTQ0NTlhOGVkZTdmODM5MjBjZGU1XzItMS0xLTEtMTQ5ODM_704b3693-bd9c-4825-91f8-51ff2d938011"
      unitRef="usd">10000000</ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents
      contextRef="i81539e6f15f944309052c4fb585ced7a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTo1OTc3MDY4ODgxNTU0NDU5YThlZGU3ZjgzOTIwY2RlNS90YWJsZXJhbmdlOjU5NzcwNjg4ODE1NTQ0NTlhOGVkZTdmODM5MjBjZGU1XzItMy0xLTEtMTQ5ODM_785d29d5-5f46-459a-ab6d-8bda1a08a0dc"
      unitRef="usd">0</ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents
      contextRef="i88d6e37967d04f7da79ffe823a963619_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTo1OTc3MDY4ODgxNTU0NDU5YThlZGU3ZjgzOTIwY2RlNS90YWJsZXJhbmdlOjU5NzcwNjg4ODE1NTQ0NTlhOGVkZTdmODM5MjBjZGU1XzItNS0xLTEtMTQ5ODM_38416b29-4a2b-45e7-ba98-aff654e8e632"
      unitRef="usd">0</ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents
      contextRef="ie9dcff0f3f32463c8b31dbb9b6e1410c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTo1OTc3MDY4ODgxNTU0NDU5YThlZGU3ZjgzOTIwY2RlNS90YWJsZXJhbmdlOjU5NzcwNjg4ODE1NTQ0NTlhOGVkZTdmODM5MjBjZGU1XzMtMS0xLTEtMTQ5ODM_2ebf1ddb-d936-405d-9360-261dc4bbf6b5"
      unitRef="usd">10000000</ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents
      contextRef="i082793a34ece4c34b7221a676bd7f943_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTo1OTc3MDY4ODgxNTU0NDU5YThlZGU3ZjgzOTIwY2RlNS90YWJsZXJhbmdlOjU5NzcwNjg4ODE1NTQ0NTlhOGVkZTdmODM5MjBjZGU1XzMtMy0xLTEtMTQ5ODM_de15de63-3c18-4bc8-8e66-af28146a96a1"
      unitRef="usd">0</ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents
      contextRef="i98c7717da7514f75ac6530249cc18234_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTo1OTc3MDY4ODgxNTU0NDU5YThlZGU3ZjgzOTIwY2RlNS90YWJsZXJhbmdlOjU5NzcwNjg4ODE1NTQ0NTlhOGVkZTdmODM5MjBjZGU1XzMtNS0xLTEtMTQ5ODM_256694b9-b9dc-4633-92ca-66f1a706fba7"
      unitRef="usd">0</ngm:MilestonePaymentForPotentialAchievementOfCertainClinicalDevelopmentEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="i4b3c8b54b72e4df5bc38ea8dae05794f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzEtMS0xLTEtNjIyNA_5521f27a-9d94-4424-9d0c-6d0a452d9830"
      unitRef="usd">75000000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="i8b1edebfbfa04e23942720be4b473dfa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzEtMy0xLTEtNjIyNA_6380331e-88ee-4fa9-9c6d-5ef71496c72a"
      unitRef="usd">56250000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="id736cabb028b48249e042ba9d37e82f9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzEtNS0xLTEtNjIyNA_5faf8a1c-6343-4a43-8c31-28af8a57d43a"
      unitRef="usd">37500000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="i2dc41a7f43a44bc39124e4d2202a8b0c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzEtNy0xLTEtNjIyNA_73ed3fe8-0fef-4ea7-8236-4a3e0d5af699"
      unitRef="usd">168750000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="iff455e0e06a8466ebbee9881c366f443_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzItMS0xLTEtNjIyNA_066dd10c-e961-4d59-b2c0-8469edb41b39"
      unitRef="usd">60000000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="i0bc775de792c47fab4c021347e5380a4_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzItMy0xLTEtNjIyNA_f83ef0bc-1c1e-4289-846b-2a7da54e8fbd"
      unitRef="usd">45000000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="i5e4b2d885ded4a5180a7e3d28c3eb51c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzItNS0xLTEtNjIyNA_c29bf5f4-bfbe-49a2-959c-888eba0ac991"
      unitRef="usd">30000000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="i81d1305c340f4ba3a5ccd4c400605e4c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzItNy0xLTEtNjIyNA_4b7e834d-c324-4025-bf46-0d85b7ed3c1e"
      unitRef="usd">135000000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="ib062fdbd92f44081bfc6a43fae9363d6_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzMtMS0xLTEtNjIyNA_ba797c9b-0ce3-4b0a-90fb-09fc446fc0c1"
      unitRef="usd">30000000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="i2efcfe62a56944e6a36af9ac0909fbcd_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzMtMy0xLTEtNjIyNA_b16a8e91-d68a-4f9c-8477-4051dee86433"
      unitRef="usd">22500000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="iaf6e3211431746f2923daa7fe18934e0_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzMtNS0xLTEtNjIyNA_01239242-dc52-4078-9be5-959279035d50"
      unitRef="usd">15000000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="i8564718e97fb4949aa4ae68cc5765338_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzMtNy0xLTEtNjIyNA_e2f2329e-2deb-43b6-ab48-7b8ab9a6cf40"
      unitRef="usd">67500000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="iec12734a3f4c483eb22d239a421dd70f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzQtMS0xLTEtNjIyNA_47954a09-134b-448c-9dfe-dce59e51fe6d"
      unitRef="usd">165000000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="i1e89ef00dd0f46e19701c213a352c654_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzQtMy0xLTEtNjIyNA_0cd02d3e-f56a-4005-aa23-7eb0e4b8931c"
      unitRef="usd">123750000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="ic0e513d5fe6040818e1505017c7d9702_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzQtNS0xLTEtNjIyNA_d9aee01e-bd74-428e-a1cd-9a1174a6ae7c"
      unitRef="usd">82500000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents
      contextRef="iea4a786385d04d0abba86bdf72072613_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpiZTA0MDU4NDNhNGM0OGU5ODkwNmIyYmNjOTZiNWVkZS90YWJsZXJhbmdlOmJlMDQwNTg0M2E0YzQ4ZTk4OTA2YjJiY2M5NmI1ZWRlXzQtNy0xLTEtNjIyNA_99770cb8-f4c5-4ef4-87ba-730b2bf2508a"
      unitRef="usd">371250000</ngm:MilestonePaymentForPotentialAchievementOfCertainRegulatoryEvents>
    <ngm:ScheduleOfRecognizedRevenueFromCollaborationAndLicenseArrangementsTableTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzE5OTI0_260c6b57-621a-4b6b-b9bd-b4dbfbdba837">&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognized revenue from its collaboration and license agreements as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Related party revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;77,882&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;87,368&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;103,544&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</ngm:ScheduleOfRecognizedRevenueFromCollaborationAndLicenseArrangementsTableTableTextBlock>
    <us-gaap:RevenueFromRelatedParties
      contextRef="if2e8e133d08f40c5ba9e65b412afd7d5_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpjY2JhMDYzMzk2YmU0NDY1OGMyMWRkZTBlMWUxMGU4OC90YWJsZXJhbmdlOmNjYmEwNjMzOTZiZTQ0NjU4YzIxZGRlMGUxZTEwZTg4XzItMS0xLTEtNjIyNA_c114997f-c8f2-4ed0-bdd7-f1ab132e742f"
      unitRef="usd">77882000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="ia49e1c4ca299464894343e44d69015ef_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpjY2JhMDYzMzk2YmU0NDY1OGMyMWRkZTBlMWUxMGU4OC90YWJsZXJhbmdlOmNjYmEwNjMzOTZiZTQ0NjU4YzIxZGRlMGUxZTEwZTg4XzItMy0xLTEtNjIyNA_4b9a14d2-c95e-4d85-85de-e2892eba86cb"
      unitRef="usd">87368000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="i4211ed27f45541699a1ae4e5e0734df0_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90YWJsZTpjY2JhMDYzMzk2YmU0NDY1OGMyMWRkZTBlMWUxMGU4OC90YWJsZXJhbmdlOmNjYmEwNjMzOTZiZTQ0NjU4YzIxZGRlMGUxZTEwZTg4XzItNS0xLTEtNjIyNA_dda41ead-ff46-4a6e-b740-aa39588796bb"
      unitRef="usd">103544000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE3NzA1Mjc_d2eb5d1b-44f8-42cc-a33a-598cf10dec36"
      unitRef="usd">77900000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="i6fce42442a9f4eca88c50459285ca7a3_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMzOTk2MDM_2d57c437-2b56-4835-a0f4-a8ff4fd7cb77">P2Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia49e1c4ca299464894343e44d69015ef_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzE3NzIx_d37c274b-7dbd-42e2-8f03-8539edd4bff4"
      unitRef="usd">87400000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="id8c0c38ba15c4034b9f37ddeb1c16a90_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzE3ODA1_4d199f38-87e1-4f98-86db-e61d714bb04b"
      unitRef="usd">61800000</us-gaap:RevenueRemainingPerformanceObligation>
    <ngm:ResearchAndDevelopmentOptionExtendTerm
      contextRef="ie371af6a7d72430abcf41b6f4be7533e_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMyNzU1OTY_2b1909ff-07ef-4b29-a005-af8435bbeb86">P2Y</ngm:ResearchAndDevelopmentOptionExtendTerm>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0c7a3e3902fb43388e169da79707b7c3_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzE3ODg5_a410318d-15f9-4a75-86d3-6daf12dc247e"
      unitRef="usd">4900000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <ngm:ResearchAndDevelopmentServicePerformancePeriod
      contextRef="ie371af6a7d72430abcf41b6f4be7533e_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzIxOTkwMjMyNzU1OTc_fc51a214-470e-405e-9096-bac998b6d500">P5Y</ngm:ResearchAndDevelopmentServicePerformancePeriod>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4211ed27f45541699a1ae4e5e0734df0_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzE4Mjk4_ceb8338e-dab3-4302-a80f-0b788c580678"
      unitRef="usd">103500000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <ngm:UpfrontLicenseFee
      contextRef="i4211ed27f45541699a1ae4e5e0734df0_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzE4MzEx_1b5bf27f-e2bd-4db1-801e-2eb0a02f8ae5"
      unitRef="usd">24000000</ngm:UpfrontLicenseFee>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzM4NDgyOTA3NzAzMzQ_c388e3b6-e234-4bc8-915c-b7a6cc254ac2"
      unitRef="usd">0</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE3NzA0OTc_53f01478-3e33-4924-ad16-b1549886fe96"
      unitRef="usd">6100000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE3NzA1MDc_d211aa39-026c-4297-ae5a-a1329a36add8"
      unitRef="usd">17800000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzAvZnJhZzo0ZDI3YjAxNWU0YjQ0MjIzYTY3ZGUzYWRhNmIzNWEwMi90ZXh0cmVnaW9uOjRkMjdiMDE1ZTRiNDQyMjNhNjdkZTNhZGE2YjM1YTAyXzEwOTk1MTE3NzA1MTU_3994a4cf-f8ab-48b0-8ba2-035c8d2a8f16"
      unitRef="usd">0</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzM0NDI_f01275d2-9aac-4e55-a02e-0a8ca68d86fb">Commitments and Contingencies&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Operating Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In December 2015, the Company entered into an operating lease agreement, or the 333 Oyster Point lease agreement, for its corporate office space and laboratory facility at 333 Oyster Point Blvd., South San Francisco, California, or the 333 Oyster Point facility, for approximately 122,000 square feet that expires in December 2023. The 333 Oyster Point lease agreement provided a tenant improvement allowance of $15.2 million that the Company used in 2016 towards $22.3 million in total leasehold improvements that are amortized over the lease term of seven years. The 333 Oyster Point lease agreement required a letter of credit in the amount of $2.3 million as a security deposit to the lease, which the Company has recorded as non-current restricted cash on the consolidated balance sheets. The Company has the right to reduce the letter of credit amount by $0.4 million on each of the third anniversary and fourth anniversary of the rent commencement date. In 2020, the Company reduced its letter of credit by $0.4 million and reclassified that amount from restricted cash to cash and cash equivalents on the consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In September 2009, the Company entered into an operating lease agreement, or the 630 Gateway lease agreement, for a corporate office space and laboratory facility at 630 Gateway Blvd., in South San Francisco, California for approximately 50,000 square feet, as amended in June 2014. In July 2016, the Company assigned the 630 Gateway lease agreement to Merck, as part of the Company&#x2019;s relocation to 333 Oyster Point facility. The 630 Gateway lease agreement expired in November 2020. Following expiration of the 630 Gateway lease agreement, the Company retains the obligation to indemnify the landlord and Merck under certain limited circumstances, but has no further payment obligations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December 31, 2021, the weighted-average remaining lease term for the 333 Oyster Point lease agreement was two years and the weighted-average discount rate used to determine the Company's operating lease liability was 2.85%. Cash paid for amounts included in the measurement of the lease liabilities were&#160;$5.1&#160;million&#160;for the&#160;year ended&#160;December&#160;31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the year ended&#160;December&#160;31, 2021, the components of lease costs, which were included in general and administrative expenses on the Company's consolidated statements of operations, were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:81.209%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.591%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Operating lease costs&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Variable lease costs (1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1,235&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total lease costs&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;3,401&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;_________________&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;(1) Variable lease costs include certain additional charges for operating costs, including insurance, maintenance, taxes and other costs incurred, which are billed based on both usage and as a percentage of the Company&#x2019;s share of total square footage.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of&#160;December&#160;31, 2021, the maturities of the Company&#x2019;s operating lease liabilities and future minimum lease payments were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:85.263%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Year Ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,455&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total undiscounted lease payments &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,749&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: present value adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(287)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Prior to the Company's adoption of the new lease accounting standard ASC 846 on January 1, 2021, the maturity schedule of future minimum lease payments under the Company's operating lease agreement as of December 31, 2020 was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:85.263%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Year Ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,141&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,455&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,890&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Rent expense for the 333 Oyster Point facility was approximately of&#160;$2.2 million for the years ended December 31, 2020 and 2019, respectively, under the previous lease accounting standard ASC 840. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Indemnification&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the normal course of business, the Company enters into contracts and agreements that contain a variety of representations and warranties and may provide for indemnification of the counterparty. The Company&#x2019;s exposure under these agreements is unknown because it involves claims that may be made against it in the future but have not yet been made.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In accordance with the Company&#x2019;s amended and restated certificate of incorporation and its amended and restated bylaws, the Company has indemnification obligations to its officers and directors, subject to some limits, with respect to their service in such capacities. The Company has also entered into indemnification agreements with its directors and certain of its officers. To date, the Company has not been subject to any claims, and it maintains director and officer insurance that may enable it to recover a portion of any amounts paid for future potential claims.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s exposure under these agreements is unknown because it involves claims that may be made against it in the future but have not yet been made. The Company believes that the fair value of these indemnification obligations is minimal and, accordingly, it has not recognized any liabilities relating to these obligations for any period presented.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i0368adb0f04940939f943834fd029892_I20151231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzI0Nw_5a04a38c-054a-48e4-8cc9-1f15f3e4b09c"
      unitRef="sqft">122000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:TenantImprovements
      contextRef="i0368adb0f04940939f943834fd029892_I20151231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzM0NQ_8856b529-4242-4477-973a-f556f5d07feb"
      unitRef="usd">15200000</us-gaap:TenantImprovements>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i3c3071335cca4907a1289056ab9b0b1b_I20151231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzM4Ng_87fe2412-8ac8-4c97-867b-6abe2b9e3bf6"
      unitRef="usd">22300000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="i3c3071335cca4907a1289056ab9b0b1b_I20151231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzQ2Mw_b0f61fcd-198e-42d4-9c1a-50385e18ff9e">P7Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:SecurityDeposit
      contextRef="id44eb73604744f029ae0cb0ee6ee6d80_I20151231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzU0OQ_1084dc8f-ca39-469f-8f93-25d5834fc52d"
      unitRef="usd">2300000</us-gaap:SecurityDeposit>
    <us-gaap:IncreaseDecreaseInSecurityDeposits
      contextRef="iff5548b47a714666a28e4d2fa9fa3310_D20151201-20151231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4Xzc1Mw_67d8521e-b97f-4874-be7d-5b02c32e21d1"
      unitRef="usd">-400000</us-gaap:IncreaseDecreaseInSecurityDeposits>
    <ngm:ReductionInSecurityDeposit
      contextRef="i2e646df232284267808a9257110b4364_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzkxMA_a2520b56-c018-4860-96f9-d8ae6a92e3f2"
      unitRef="usd">400000</ngm:ReductionInSecurityDeposit>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="ic0df64ac5d4843e1be9e79ff6e8c0f88_I20090930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzEyMTg_b53768e9-ab0d-42f5-9578-da2cd89c7341"
      unitRef="sqft">50000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:OperatingLeasePayments
      contextRef="i43468ce926d04073877b09cdf6aa7ff6_D20090901-20090930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzE2MDM_28249c36-a8f8-468b-87c2-2e70ea002420"
      unitRef="usd">0</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzEwOTk1MTE2MzQ3MDk_6799e735-0f15-4f63-9608-812aca17c56f">P2Y</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzEwOTk1MTE2MzQ2OTg_306688ad-bd75-46a8-bc6d-493de26ffb1b"
      unitRef="number">0.0285</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeasePayments
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzEwOTk1MTE2MzQ3MjQ_c4afd2e2-8080-4df6-96ff-bd1caa87e2e6"
      unitRef="usd">5100000</us-gaap:OperatingLeasePayments>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzM4NDgyOTA3MDU3Mjc_12019dd1-d300-4aac-b258-3c05a06f03b9">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the year ended&#160;December&#160;31, 2021, the components of lease costs, which were included in general and administrative expenses on the Company's consolidated statements of operations, were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:81.209%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.591%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Operating lease costs&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Variable lease costs (1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1,235&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total lease costs&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;3,401&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;_________________&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;(1) Variable lease costs include certain additional charges for operating costs, including insurance, maintenance, taxes and other costs incurred, which are billed based on both usage and as a percentage of the Company&#x2019;s share of total square footage.&lt;/span&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90YWJsZTo4NzgxZmQwZGU1Nzc0NmRmOTMzMGM1YjM2OGVkM2M4MC90YWJsZXJhbmdlOjg3ODFmZDBkZTU3NzQ2ZGY5MzMwYzViMzY4ZWQzYzgwXzEtMS0xLTEtMTQxMjc_1a769137-4782-4f0c-b213-998c8bc039f7"
      unitRef="usd">2166000</us-gaap:OperatingLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90YWJsZTo4NzgxZmQwZGU1Nzc0NmRmOTMzMGM1YjM2OGVkM2M4MC90YWJsZXJhbmdlOjg3ODFmZDBkZTU3NzQ2ZGY5MzMwYzViMzY4ZWQzYzgwXzItMS0xLTEtMTQxMjc_783562d6-0584-4f7e-a352-4e1c321e472e"
      unitRef="usd">1235000</us-gaap:VariableLeaseCost>
    <us-gaap:LeaseCost
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90YWJsZTo4NzgxZmQwZGU1Nzc0NmRmOTMzMGM1YjM2OGVkM2M4MC90YWJsZXJhbmdlOjg3ODFmZDBkZTU3NzQ2ZGY5MzMwYzViMzY4ZWQzYzgwXzMtMS0xLTEtMTQxMjc_7efc0f84-9fce-4e76-85cf-f7504f9816dc"
      unitRef="usd">3401000</us-gaap:LeaseCost>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzIxOTkwMjMyNjUwODU_2a08dd76-8226-4e6b-a6b1-bed21132b74c">&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of&#160;December&#160;31, 2021, the maturities of the Company&#x2019;s operating lease liabilities and future minimum lease payments were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:85.263%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Year Ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,455&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total undiscounted lease payments &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,749&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: present value adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(287)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,462&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90YWJsZTo1NTI5MGE0YWM1NjI0MjkxYmM1NDcwNDI0YzIzYjE2OS90YWJsZXJhbmdlOjU1MjkwYTRhYzU2MjQyOTFiYzU0NzA0MjRjMjNiMTY5XzEtMS0xLTEtNjIyNA_5bb178b2-527b-4806-8e89-5b70652414bb"
      unitRef="usd">5294000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90YWJsZTo1NTI5MGE0YWM1NjI0MjkxYmM1NDcwNDI0YzIzYjE2OS90YWJsZXJhbmdlOjU1MjkwYTRhYzU2MjQyOTFiYzU0NzA0MjRjMjNiMTY5XzItMS0xLTEtNjIyNA_a8d9ab59-9953-44f5-9ac7-db756cb44568"
      unitRef="usd">5455000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90YWJsZTo1NTI5MGE0YWM1NjI0MjkxYmM1NDcwNDI0YzIzYjE2OS90YWJsZXJhbmdlOjU1MjkwYTRhYzU2MjQyOTFiYzU0NzA0MjRjMjNiMTY5XzMtMS0xLTEtNjIyNA_4fdbffbd-f515-4fd2-a004-60397d266d47"
      unitRef="usd">10749000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90YWJsZTo1NTI5MGE0YWM1NjI0MjkxYmM1NDcwNDI0YzIzYjE2OS90YWJsZXJhbmdlOjU1MjkwYTRhYzU2MjQyOTFiYzU0NzA0MjRjMjNiMTY5XzQtMS0xLTEtMTQyNTQ_58fbae4f-9e9e-4f27-bb5d-4b2c9b1287f3"
      unitRef="usd">287000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90YWJsZTo1NTI5MGE0YWM1NjI0MjkxYmM1NDcwNDI0YzIzYjE2OS90YWJsZXJhbmdlOjU1MjkwYTRhYzU2MjQyOTFiYzU0NzA0MjRjMjNiMTY5XzQtMS0xLTEtNjIyNA_829861d1-b1c5-4e23-8051-3df0a3a245ce"
      unitRef="usd">10462000</us-gaap:OperatingLeaseLiability>
    <us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzM0NDM_0ed4ec2e-e156-439d-9c86-88d33490a24c">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Prior to the Company's adoption of the new lease accounting standard ASC 846 on January 1, 2021, the maturity schedule of future minimum lease payments under the Company's operating lease agreement as of December 31, 2020 was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:85.263%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Year Ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,141&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,455&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,890&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock>
    <us-gaap:OperatingLeasesFutureMinimumPaymentsDueCurrent
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90YWJsZTowYjQ3YWJkNGNhNTk0OTU4OWIzYzg0NmEwNzI5MWFkYi90YWJsZXJhbmdlOjBiNDdhYmQ0Y2E1OTQ5NTg5YjNjODQ2YTA3MjkxYWRiXzEtMS0xLTEtMjExMDk_7a240c20-7492-4104-8a9e-d6c2720142d5"
      unitRef="usd">5141000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueCurrent>
    <us-gaap:OperatingLeasesFutureMinimumPaymentsDueInTwoYears
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90YWJsZTowYjQ3YWJkNGNhNTk0OTU4OWIzYzg0NmEwNzI5MWFkYi90YWJsZXJhbmdlOjBiNDdhYmQ0Y2E1OTQ5NTg5YjNjODQ2YTA3MjkxYWRiXzItMS0xLTEtMjExMDk_cf10043d-dafb-4318-a924-8ca9406cb9fc"
      unitRef="usd">5294000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueInTwoYears>
    <us-gaap:OperatingLeasesFutureMinimumPaymentsDueInThreeYears
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90YWJsZTowYjQ3YWJkNGNhNTk0OTU4OWIzYzg0NmEwNzI5MWFkYi90YWJsZXJhbmdlOjBiNDdhYmQ0Y2E1OTQ5NTg5YjNjODQ2YTA3MjkxYWRiXzMtMS0xLTEtMjExMDk_03a2464b-0e00-49db-ad68-fc7905d0688a"
      unitRef="usd">5455000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueInThreeYears>
    <us-gaap:OperatingLeasesFutureMinimumPaymentsDue
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90YWJsZTowYjQ3YWJkNGNhNTk0OTU4OWIzYzg0NmEwNzI5MWFkYi90YWJsZXJhbmdlOjBiNDdhYmQ0Y2E1OTQ5NTg5YjNjODQ2YTA3MjkxYWRiXzQtMS0xLTEtMjExMDk_2b1b4818-69e1-430b-95fd-6b4b38370111"
      unitRef="usd">15890000</us-gaap:OperatingLeasesFutureMinimumPaymentsDue>
    <us-gaap:OperatingLeasesRentExpenseNet
      contextRef="i8cb53eb79e644acfbc25c3f1e2dd7d48_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzEwOTk1MTE2MzY3NjI_dec1395b-f2e2-4fd9-839a-b5b8b2527ce6"
      unitRef="usd">2200000</us-gaap:OperatingLeasesRentExpenseNet>
    <us-gaap:OperatingLeasesRentExpenseNet
      contextRef="i638f20ad5c0f44e5be50e5a075ab7d77_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xMzYvZnJhZzoyNTJlZWM2NzJkNzQ0NTA1YjRhMjU1ZGJhYTI0MDBlOC90ZXh0cmVnaW9uOjI1MmVlYzY3MmQ3NDQ1MDViNGEyNTVkYmFhMjQwMGU4XzEwOTk1MTE2MzY3NjI_e113818d-e5df-4c3a-ab16-dac8b422debb"
      unitRef="usd">2200000</us-gaap:OperatingLeasesRentExpenseNet>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwODUx_2ac324d0-5cb7-4200-87a5-e719fd493955">Stockholders&#x2019; Equity&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Preferred Stock&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has 10,000,000 shares of preferred stock authorized, which may be issued at the discretion of the Company&#x2019;s board of directors. The board of directors may issue shares of preferred stock in one or more series and to fix the number, rights, preferences, privileges and restrictions. These rights, preferences and privileges could include dividend rights, conversion rights, voting rights, terms of redemption, liquidation preferences and sinking fund terms. As of December&#160;31, 2021, the Company does not have any shares of preferred stock issued or outstanding.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Common Stock&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Public Offering of Common Stock&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In January 2021, the Company sold 5,324,074 shares of its common stock through an underwritten public offering at a price to the public of $27.00 per share for aggregate net proceeds to the Company of $134.6&#160;million, after deducting underwriting discounts and commissions and other offering expenses paid by the Company. The offering closed on January 8, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2021 and 2020, the Company had 77,962,722 and 70,585,364 shares of common stock outstanding, respectively, which included shares subject to repurchase of 42 and 6,508, respectively, as a result of early exercise of stock options not yet vested.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company had reserved the following shares of common stock for issuance:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.894%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Reserve balance for Sales Agreement&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;14,182,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;14,190,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Common stock options outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,484,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,017,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Common stock options available for grant&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;6,698,538&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;6,186,497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ESPP shares available for purchase&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;506,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;700,074&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;401(k) matching plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;17,813&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;21,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;31,890,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;31,116,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Open Market Sale Agreement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In June 2020, the Company entered into the Sales Agreement with Jefferies relating to the sale of shares of its common stock. In accordance with the terms of the Sales Agreement, the Company may offer and sell shares of its common stock having an aggregate offering price of up to $150.0 million from time to time through Jefferies acting as its sales agent. In 2020, under the Sales Agreement, the Company sold 809,700 shares of its common stock at an average price of $27.94 per share for net proceeds of $21.3 million, after deducting $0.7 million in sales commissions.&#160;During the year ended December&#160;31, 2021, 7,400 shares of the Company's common stock were sold pursuant to the Sales Agreement. As of December&#160;31, 2021, $127.2 million of the Company&#x2019;s common stock remained available to be sold under the Sales Agreement, subject to conditions specified in the Sales Agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Equity Incentive Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In 2018, the Company adopted the 2018 Equity Incentive Plan, or the 2018 Plan, for eligible employees, officers, directors, advisors and consultants, which provides for the grant of incentive and non-statutory stock options, restricted stock awards and stock appreciation rights. The terms of the stock option agreements, including vesting requirements, are determined by the board of directors, subject to the provisions of the 2018 Plan. Options granted by the Company generally vest within four years and are exercisable from the grant date until ten years after the date of grant. Vesting of certain employee options may be accelerated in the event of a change in control of the Company. Pursuant to the terms of the 2018 Plan, the number of shares reserved and available to issue will automatically increase on January 1st of each year in an amount equal to 4% of the total number of common shares outstanding on the December&#160;31st immediately preceding calendar year, unless the board of directors elects to forego or reduce such increase. As of December&#160;31, 2021, 17,183,091 shares of common stock had been authorized for issuance under the 2018 Plan and the Company's 2008 Equity Incentive Plan which expired in 2018.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock options are governed by stock option agreements between the Company and recipients of stock options. Prior to the closing of the Company&#x2019;s IPO, the board of directors exercised reasonable judgment and considered a number of objective and subjective factors to determine the best estimate of the fair value of the Company&#x2019;s common stock, including: the Company&#x2019;s stage of development; progress of its research and development efforts; the rights, preferences and privileges of its convertible preferred stock relative to those of its common stock; equity market conditions affecting comparable companies; and the lack of marketability of the Company&#x2019;s common stock. Subsequent to the IPO, the exercise price of each option may not be less than 100% of the fair market value of the common stock subject to the option on the date the option is granted. A 10% or greater stockholder may not be granted an incentive stock option unless the exercise price of such option is at least 110% of the fair value of the common stock on the date of grant and the option is not exercisable after the expiration of five years from the grant date. Options become exercisable and expire as determined by the Compensation Committee of the Company&#x2019;s board of directors, provided that the term of incentive stock options may not exceed ten years from the date of grant for options granted to those other than 10% stockholders.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Early Exercise of Stock Options &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The 2018 Plan allows for the granting of options that may be exercised before the options have vested. Shares issued as a result of early exercise that have not vested are subject to repurchase by the Company upon termination of the purchaser&#x2019;s employment or services, at the price paid by the purchaser, and are not deemed to &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;be issued for accounting purposes until those related shares vest. The amounts received in exchange for these shares have been recorded as a liability on the consolidated balance sheets and will be reclassified into Company common stock and additional paid-in-capital as the shares vest. The Company&#x2019;s right to repurchase these shares generally lapses in equal installments over four years beginning from the original vesting commencement date. Since the beginning of March 2021, the Company has not granted any options under the 2018 Plan that can be early exercised prior to vesting. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;2019 Employee Stock Purchase Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In March 2019, the Company adopted the ESPP. The Company reserved 1,000,000 shares of common stock pursuant to purchase rights granted to the Company&#x2019;s employees. The ESPP provides that the number of shares reserved and available for issuance will automatically increase on January 1 of each calendar year, beginning January 1, 2020, by the lesser of (1) 1.0% of the total number of shares of common stock outstanding on December&#160;31 of the preceding calendar year, (2) 1,000,000 shares or (3) a number determined by the Company&#x2019;s board of directors that is less than (1) and (2). Under the ESPP, eligible employees are granted the right to purchase shares of the Company&#x2019;s common stock through payroll deductions that cannot exceed 15% of each employee&#x2019;s salary. The ESPP provides for a 24-month offering period, which includes four six-month purchase periods. At the end of each purchase period, eligible employees are permitted to purchase shares of common stock at the lower of 85% of fair market value at the beginning of the offering period or fair market value at the end of the purchase period. The ESPP is considered a compensatory plan and the Company has recorded stock-based compensation expense of $1.6 million, $1.2 million and $1.0 million for the years ended December&#160;31, 2021, 2020 and 2019, respectively. As of December&#160;31, 2021, 493,022 shares of common stock had been purchased under the ESPP.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock Option Activity&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of the activity under the 2008 Plan and the 2018 Plan is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:44.514%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.185%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:21pt"&gt;&lt;td colspan="3" rowspan="2" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Outstanding Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual Life&lt;br/&gt;(In Years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value&lt;br/&gt;(In Thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:45pt"&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Number of&lt;br/&gt;Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balances at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,017,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.52&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.45&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;198,097&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 6.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Options granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,924,383&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29.42&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 6.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Options exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,845,276)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 6.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Options cancelled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(612,472)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22.03&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balances at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,484,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15.79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.68&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,349&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested and expected to vest at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,183,536&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.62&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercisable at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,504,265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12.72&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.08&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The aggregate intrinsic values of options outstanding, vested and expected to vest, and exercisable were calculated as the difference between the exercise price of the options and the estimated fair value of the Company&#x2019;s common stock. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Employee Stock-Based Compensation Expense&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Employee and director stock-based compensation expense is calculated based on awards previously granted to employees and directors that are ultimately expected to vest and has been reduced for estimated forfeitures.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Employee and director stock-based compensation expense was allocated as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;13,983&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;8,145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;11,971&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,312&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;5,584&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;25,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;15,457&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;12,729&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Valuation Assumptions&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company uses the Black-Scholes option-pricing model to estimate the fair value of stock options at the grant date. The Black-Scholes option-pricing model requires the Company to make certain estimates and assumptions, including assumptions related to the expected price volatility of the Company&#x2019;s stock, the period during which the options will be outstanding, the rate of return on risk-free investments and the expected dividend yield for the Company&#x2019;s stock.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The expected volatility is based on the historical volatility of the stock of similar entities within the Company&#x2019;s industry over periods commensurate with the Company&#x2019;s expected term assumption.&#160;The expected term of stock option grants represents the weighted-average period the options are expected to remain outstanding and is based on the &#x201c;simplified&#x201d; method where the expected term is the midpoint between the vesting date and the end of the contractual term for each option. The Company bases the risk-free interest rate on the interest rate payable on U.S. Treasury securities in effect at the time of grant for a period that is commensurate with the assumed expected option term. In reference to the expected dividend yield assumption, the Company has not historically paid, and does not expect for the foreseeable future to pay, a dividend.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The weighted average grant-date fair value of stock options granted during the years ended December&#160;31, 2021, 2020 and 2019 was $18.57, $10.86 and $8.00 per share, respectively. The intrinsic value of stock options exercised was $34.2 million, $40.9 million and $10.2 million for the years ended December&#160;31, 2021, 2020 and 2019, respectively. Due to the Company&#x2019;s net operating losses, the Company did not realize any tax benefits from stock-based payment arrangements for the years ended December&#160;31, 2021, 2020 and 2019.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of stock option awards granted to employees and directors were estimated at the date of grant using a Black-Scholes option-pricing model with the following weighted average valuation assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;72&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Expected term (years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;5.98&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;6.23&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;6.18&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.95&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.04&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Expected dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2021, total compensation cost not yet recognized related to unvested stock options granted to employees and directors was $48.3 million, which is expected to be recognized over a weighted-average period of 2.9 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the rights granted to employees under the ESPP was estimated at the date of offer using a Black-Scholes option-pricing model with the following weighted average valuation assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;72&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;74&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;59&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Expected term (years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.27&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.17&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.23&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.27&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.97&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Expected dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzU5_c3843491-fee9-46bb-9a6a-dabe3e2e27f3"
      unitRef="shares">10000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="if3e01d41d42b49098588bdbff92000bd_D20210101-20210131"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzM4NDgyOTA3MTkzNzg_e283c2fa-9970-4ca6-8b7e-220bb515c53f"
      unitRef="shares">5324074</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:SharePrice
      contextRef="i5c6e8fd481c145b5922a743141146995_I20210131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzIxOTkwMjMyNzc3MzI_bf82634b-519f-48fe-a43a-094fbc2059ca"
      unitRef="usdPerShare">27.00</us-gaap:SharePrice>
    <us-gaap:SaleOfStockConsiderationReceivedOnTransaction
      contextRef="if3e01d41d42b49098588bdbff92000bd_D20210101-20210131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzIxOTkwMjMyNzc3NTU_97d32168-b85b-43e7-864f-7c59e6994c91"
      unitRef="usd">134600000</us-gaap:SaleOfStockConsiderationReceivedOnTransaction>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NDI1OTA_4339e545-90db-4087-86b6-98489fd4ecf2"
      unitRef="shares">77962722</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzYzOQ_d3e122d4-1b0b-4ad9-8bb1-bafd3d2095ae"
      unitRef="shares">70585364</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NDI2MDQ_7901027d-1200-44dc-83cd-8a5bc8b275aa"
      unitRef="shares">42</us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased>
    <us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4Xzc0Ng_c27cf2b3-aa1c-4aec-928f-18b19216d00f"
      unitRef="shares">6508</us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased>
    <us-gaap:ScheduleOfStockByClassTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwODUy_b796239e-9d6d-40f1-b52c-48c5c3ad435e">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company had reserved the following shares of common stock for issuance:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.894%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Reserve balance for Sales Agreement&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;14,182,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;14,190,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Common stock options outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,484,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;10,017,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Common stock options available for grant&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;6,698,538&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;6,186,497&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ESPP shares available for purchase&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;506,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;700,074&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;401(k) matching plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;17,813&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;21,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;31,890,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;31,116,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfStockByClassTextBlock>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i5cc057ebcce542eea7faf82421576f59_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTphMDk3MjI3YmYxOTg0ZTVmOWI2YWY3YjhhMWYzYWFlYi90YWJsZXJhbmdlOmEwOTcyMjdiZjE5ODRlNWY5YjZhZjdiOGExZjNhYWViXzItMS0xLTEtNjIyNA_70da88b3-c5e0-499b-900a-aedf31368877"
      unitRef="shares">14182900</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i5046f5ba05504b39b7917c7e1de3ab9c_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTphMDk3MjI3YmYxOTg0ZTVmOWI2YWY3YjhhMWYzYWFlYi90YWJsZXJhbmdlOmEwOTcyMjdiZjE5ODRlNWY5YjZhZjdiOGExZjNhYWViXzItMy0xLTEtNjIyNA_04702bc5-8cca-45a5-a498-7e5566888cd5"
      unitRef="shares">14190300</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i38d8cca8bce64e9298a974eddce5e25d_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTphMDk3MjI3YmYxOTg0ZTVmOWI2YWY3YjhhMWYzYWFlYi90YWJsZXJhbmdlOmEwOTcyMjdiZjE5ODRlNWY5YjZhZjdiOGExZjNhYWViXzMtMS0xLTEtNjIyNA_bc6196f7-53f6-4d9d-910d-50a40e9713b6"
      unitRef="shares">10484553</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i639aa025e65f4bc5841298976fd93a8b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTphMDk3MjI3YmYxOTg0ZTVmOWI2YWY3YjhhMWYzYWFlYi90YWJsZXJhbmdlOmEwOTcyMjdiZjE5ODRlNWY5YjZhZjdiOGExZjNhYWViXzMtMy0xLTEtNjIyNA_cab2af57-456b-479f-95ad-3f4988a87bcb"
      unitRef="shares">10017918</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="if8a06807f50b46f895801539093bcae0_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTphMDk3MjI3YmYxOTg0ZTVmOWI2YWY3YjhhMWYzYWFlYi90YWJsZXJhbmdlOmEwOTcyMjdiZjE5ODRlNWY5YjZhZjdiOGExZjNhYWViXzQtMS0xLTEtNjIyNA_bbd69f70-1059-4459-a1a1-19c425161573"
      unitRef="shares">6698538</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="id4279183744c4a78a1a13330dfaa1030_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTphMDk3MjI3YmYxOTg0ZTVmOWI2YWY3YjhhMWYzYWFlYi90YWJsZXJhbmdlOmEwOTcyMjdiZjE5ODRlNWY5YjZhZjdiOGExZjNhYWViXzQtMy0xLTEtNjIyNA_4864d117-f4fc-4bf0-9a20-5b0bc41fdf3b"
      unitRef="shares">6186497</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i0848256c92924c69a3b0fb6f6a8dc010_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTphMDk3MjI3YmYxOTg0ZTVmOWI2YWY3YjhhMWYzYWFlYi90YWJsZXJhbmdlOmEwOTcyMjdiZjE5ODRlNWY5YjZhZjdiOGExZjNhYWViXzUtMS0xLTEtNjIyNA_f6a9ab82-5a08-4ba6-9bad-a442488711cc"
      unitRef="shares">506978</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i5736b966d011441e8e92c7e88bc934f3_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTphMDk3MjI3YmYxOTg0ZTVmOWI2YWY3YjhhMWYzYWFlYi90YWJsZXJhbmdlOmEwOTcyMjdiZjE5ODRlNWY5YjZhZjdiOGExZjNhYWViXzUtMy0xLTEtNjIyNA_cd84c101-5579-4761-b452-408b042318bb"
      unitRef="shares">700074</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="id8a59d5056eb483290a13fd4906f24b3_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTphMDk3MjI3YmYxOTg0ZTVmOWI2YWY3YjhhMWYzYWFlYi90YWJsZXJhbmdlOmEwOTcyMjdiZjE5ODRlNWY5YjZhZjdiOGExZjNhYWViXzYtMS0xLTEtNjIyNA_1d224de4-cb31-4739-bb37-be246944c23c"
      unitRef="shares">17813</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="id97b3d64cef7424589b459e63d45edb2_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTphMDk3MjI3YmYxOTg0ZTVmOWI2YWY3YjhhMWYzYWFlYi90YWJsZXJhbmdlOmEwOTcyMjdiZjE5ODRlNWY5YjZhZjdiOGExZjNhYWViXzYtMy0xLTEtNjIyNA_50cba827-0669-4658-9ec0-292e334db847"
      unitRef="shares">21930</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTphMDk3MjI3YmYxOTg0ZTVmOWI2YWY3YjhhMWYzYWFlYi90YWJsZXJhbmdlOmEwOTcyMjdiZjE5ODRlNWY5YjZhZjdiOGExZjNhYWViXzctMS0xLTEtNjIyNA_ce942597-5ed5-44ca-a20a-4a11449ae0bf"
      unitRef="shares">31890782</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTphMDk3MjI3YmYxOTg0ZTVmOWI2YWY3YjhhMWYzYWFlYi90YWJsZXJhbmdlOmEwOTcyMjdiZjE5ODRlNWY5YjZhZjdiOGExZjNhYWViXzctMy0xLTEtNjIyNA_30659bea-c68b-4050-9a45-306fcfd949ec"
      unitRef="shares">31116719</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <ngm:SaleOfStockAggregateOfferingPrice
      contextRef="ic6c25b5f0e5c47908aecc166cba4dd70_D20200601-20200630"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEyMjA_243db64f-fac9-435f-b503-f6c0cffb1cbf"
      unitRef="usd">150000000</ngm:SaleOfStockAggregateOfferingPrice>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="i87c168ebacaa409a88565a23a32f2d5b_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2Mzk3NTg_2a5d809a-4128-4a6e-8088-df43d9241f46"
      unitRef="shares">809700</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:SharePrice
      contextRef="i6ad6aa5fc6454a939866ff306c818fb7_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2Mzk4MTI_49a626e1-03dd-422f-800e-c41414d2c99b"
      unitRef="usdPerShare">27.94</us-gaap:SharePrice>
    <us-gaap:SaleOfStockConsiderationReceivedOnTransaction
      contextRef="i87c168ebacaa409a88565a23a32f2d5b_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NTA0NzE_355784f0-d665-4a60-a958-a8b37484ccff"
      unitRef="usd">21300000</us-gaap:SaleOfStockConsiderationReceivedOnTransaction>
    <ngm:SalesCommissions
      contextRef="i87c168ebacaa409a88565a23a32f2d5b_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2Mzk4Njc_62d2f8e2-dd5e-419b-8cad-30d0faf08071"
      unitRef="usd">700000</ngm:SalesCommissions>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="id60b51d1cd8a4a88af56f8875c7b2c6c_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2Mzk2NDk_e6015f5b-6156-4786-a428-b195c6ebc416"
      unitRef="shares">7400</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <ngm:SaleOfStockCommonStockAvailableForIssuance
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2Mzk2OTc_725748ea-5ca0-4317-9680-f5b9743c2c1f"
      unitRef="usd">127200000</ngm:SaleOfStockCommonStockAvailableForIssuance>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i4dd4d579f7f047889911fb3ac102d83b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NDM0ODQ_78434021-8c3e-4777-b78e-fe7209d57f3f">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="if846a69a3c964ef4a236550ec511128e_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NDM0ODg_605b00e6-3587-45ca-b58c-f7a8cc99ab36">P10Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <ngm:PercentageOfNumberOfSharesReservedAndAvailableToIssueAutomaticallyIncreaseOutstandingOnPrecedingCalendar
      contextRef="i3f55bca43f0a4a2a840f9a440a2e4de1_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzI3MDA_2b8bea65-acf7-4080-8817-cc6119bb310f"
      unitRef="number">0.04</ngm:PercentageOfNumberOfSharesReservedAndAvailableToIssueAutomaticallyIncreaseOutstandingOnPrecedingCalendar>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i28d3ee8523ec4bd08f47e8139a19bee0_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NTAwMDk_8843073e-6bb3-4db0-b495-dab1a5470770"
      unitRef="shares">17183091</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent
      contextRef="ie3fc1d3388924a6da72c83b25d62986a_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzM2OTQ_202a7a81-4980-4be1-8d04-4abb6f3f4011"
      unitRef="number">1</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent
      contextRef="iaf9f8e9dd1f04a6fb30181db6b177ee1_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzM5MjU_2b0cb21e-317e-46ea-a801-e30aa43eaf2e"
      unitRef="number">1.10</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="iaf9f8e9dd1f04a6fb30181db6b177ee1_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzQwNDU_e9c65afa-be79-4a90-a98b-96212dfc212e">P5Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="i2b607944e8d4445b861aa7cffd7eee00_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzQyNTM_e245e160-3ec2-43be-98b4-b43dc3a17001">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <ngm:SharesRightToRepurchaseLapsePeriod
      contextRef="i3f55bca43f0a4a2a840f9a440a2e4de1_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NDUxOTE_e081a937-1d4a-4095-819b-733ab59d8806">P4Y</ngm:SharesRightToRepurchaseLapsePeriod>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i5e8cca0a8dd6421ca57ab3a455ca6eef_I20190331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzQ0MzQ_75a1a603-6046-4b9c-8b96-176155db3f7f"
      unitRef="shares">1000000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardPercentageOfOutstandingStockMaximum
      contextRef="if7e9601431244749aac278933757e395_D20190331-20190331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzQ3MTY_4167e54d-eac4-4952-8cda-c45a49eb9874"
      unitRef="number">0.010</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardPercentageOfOutstandingStockMaximum>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i5e8cca0a8dd6421ca57ab3a455ca6eef_I20190331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzQ4MTk_c4e1cb3f-279f-4d4d-924e-96f434f1c1f9"
      unitRef="shares">1000000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate
      contextRef="i5e8cca0a8dd6421ca57ab3a455ca6eef_I20190331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzUwNzM_1b40cfe0-ef0e-4c22-956e-7ad69a817a12"
      unitRef="number">0.15</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate>
    <ngm:OfferingPeriodForPurchaseUnderEmployeeStockPurchasePlan
      contextRef="i53a97504f4674ec5ba04a3aa7dc81cee_D20190301-20190331"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzUxMjc_0e0434cf-7d47-4a79-8b7b-8f17539ecfd5">P24M</ngm:OfferingPeriodForPurchaseUnderEmployeeStockPurchasePlan>
    <ngm:NumberOfPurchasePeriods
      contextRef="i53a97504f4674ec5ba04a3aa7dc81cee_D20190301-20190331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzUxNjg_74d1620b-44c5-486d-bb4c-af50640be421"
      unitRef="period">4</ngm:NumberOfPurchasePeriods>
    <ngm:DurationOfEachPurchasePeriod
      contextRef="i53a97504f4674ec5ba04a3aa7dc81cee_D20190301-20190331"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzIxOTkwMjMyNzc3NzA_c2bf7120-c8b8-40bc-bab9-53d1d1cb82ec">P6M</ngm:DurationOfEachPurchasePeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPriceOfferingDate
      contextRef="i53a97504f4674ec5ba04a3aa7dc81cee_D20190301-20190331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzUzMTg_41545b9d-a0c9-48c1-85b2-3f7e2fc0b904"
      unitRef="number">0.85</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPriceOfferingDate>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i6f9f50161bad445caf45262af1bca118_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NDc3MDQ_c3d24181-2381-4463-9d35-cea3ea464a04"
      unitRef="usd">1600000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ia83d4873f1d44abf98f3c2b65f3862f7_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzU1NDk_5db07a00-8b05-4356-a2ef-a5442ec6caf9"
      unitRef="usd">1200000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ia2eaa4feea9d40e09864ce1950ba553f_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NTAzMDY_dc200227-1219-4868-acf5-a9497d71f437"
      unitRef="usd">1000000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:CommonStockSharesIssued
      contextRef="i3c1d9b94363e4de0b600cbe627cba99b_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NDc3Mjg_59951fdd-b763-49a7-b2c8-8e676b9a5339"
      unitRef="shares">493022</us-gaap:CommonStockSharesIssued>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwODUz_d3745c29-d98f-4dca-b3f9-fbbb858c2b2d">&lt;div style="margin-top:12pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of the activity under the 2008 Plan and the 2018 Plan is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:44.514%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.185%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:21pt"&gt;&lt;td colspan="3" rowspan="2" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Outstanding Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual Life&lt;br/&gt;(In Years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value&lt;br/&gt;(In Thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:45pt"&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Number of&lt;br/&gt;Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balances at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,017,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.52&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.45&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;198,097&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 6.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Options granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,924,383&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29.42&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 6.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Options exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,845,276)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 6.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Options cancelled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(612,472)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22.03&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balances at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,484,553&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15.79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.68&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,349&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested and expected to vest at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,183,536&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.62&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercisable at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,504,265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12.72&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.08&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzItMy0xLTEtNjIyNA_748ce8f4-7b6b-4043-ae64-ef0e9c5176c5"
      unitRef="shares">10017918</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzItNS0xLTEtNjIyNA_f7619e9f-750d-42cf-966b-a2e812e6fb91"
      unitRef="usdPerShare">10.52</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzItNy0xLTEtNjIyNA_17da497b-3b77-4ea6-bf71-a4a94cd5ca70">P6Y5M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzItOS0xLTEtNjIyNA_38dbedb3-a97f-4e50-be97-aeee93e06d1e"
      unitRef="usd">198097000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzQtMy0xLTEtNjIyNA_a7438823-a77d-466b-a340-3e6aa3982095"
      unitRef="shares">2924383</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzQtNS0xLTEtNjIyNA_2326ab15-c8d4-4bc4-8a80-299a9315679d"
      unitRef="usdPerShare">29.42</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzUtMy0xLTEtNjIyNA_d48d7cc5-89ed-4086-9b04-5eb536f8d5c5"
      unitRef="shares">1845276</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzUtNS0xLTEtNjIyNA_76bf0777-4766-47cc-9b84-60bf285d8a03"
      unitRef="usdPerShare">6.70</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzYtMy0xLTEtNjIyNA_a4fd75fd-61ad-4852-bc05-cac61f912b35"
      unitRef="shares">612472</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzYtNS0xLTEtNjIyNA_e456766c-e98e-4866-b06e-8031f0ced7bc"
      unitRef="usdPerShare">22.03</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzctMy0xLTEtNjIyNA_1840e776-e1d0-4899-8d0f-f877ad08ac05"
      unitRef="shares">10484553</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzctNS0xLTEtNjIyNA_a5ab9527-1261-4a3e-b2c1-c63d33585415"
      unitRef="usdPerShare">15.79</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzctNy0xLTEtNjIyNA_48550d9b-ba0b-4e50-9820-a00e594cb7ad">P6Y8M4D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzctOS0xLTEtNjIyNA_40513446-d69f-48ef-9306-9c7a42657f15"
      unitRef="usd">52349000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzctMS0xLTEtMTQ2OTI_6f22def0-6b59-43f6-91f2-3e5d38910e6c"
      unitRef="shares">10183536</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzctMy0xLTEtMTQ2OTI_9e0c4983-7ab5-4e01-8946-647c4ecfae2e"
      unitRef="usdPerShare">15.55</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzctNS0xLTEtMTQ2OTI_f4b67c38-cd1e-475d-9de8-e0739ea7fe49">P6Y7M13D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzctNy0xLTEtMTQ2OTI_dd9ede0f-4f89-49ca-88ca-ee9107cd0724"
      unitRef="usd">52221000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzgtMS0xLTEtMTQ3MTU_18e8eee8-2fbe-4b1e-957b-3c8b102a62ea"
      unitRef="shares">8504265</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzgtMy0xLTEtMTQ3MjI_24244231-1a75-4176-b255-87e952174b90"
      unitRef="usdPerShare">12.72</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzgtNS0xLTEtMTQ3MjI_ab9f054d-dfca-4a58-85a4-d7a46073c44d">P6Y29D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpkY2Q5ZDdkNTE0NDE0MmZiODRlNjAzMzRmNzYwMTlmNS90YWJsZXJhbmdlOmRjZDlkN2Q1MTQ0MTQyZmI4NGU2MDMzNGY3NjAxOWY1XzgtNy0xLTEtMTQ3MjI_891919b8-4dde-4524-b673-991d599e1a8a"
      unitRef="usd">52279000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwODU0_efac8cf1-5f7d-4a04-a53d-d67b03866543">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Employee and director stock-based compensation expense was allocated as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;13,983&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;8,145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;11,971&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,312&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;5,584&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;25,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;15,457&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;12,729&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i2b53e7c14c9a44f391b77d2c30753f01_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo0NzMzZGI2NTg2YWE0ODljOWM0NDNjMDAzZTUzMGE0MS90YWJsZXJhbmdlOjQ3MzNkYjY1ODZhYTQ4OWM5YzQ0M2MwMDNlNTMwYTQxXzItMS0xLTEtNjIyNA_54a28d37-00bc-4dfe-a034-81a12cbbec3d"
      unitRef="usd">13983000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ie1dc2d14aae24bc1899b706b6dc67750_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo0NzMzZGI2NTg2YWE0ODljOWM0NDNjMDAzZTUzMGE0MS90YWJsZXJhbmdlOjQ3MzNkYjY1ODZhYTQ4OWM5YzQ0M2MwMDNlNTMwYTQxXzItMy0xLTEtNjIyNA_57c4b849-6e03-4a39-aa58-e611a1732973"
      unitRef="usd">8145000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="id38ac2c56628479d8597e3a98f605029_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo0NzMzZGI2NTg2YWE0ODljOWM0NDNjMDAzZTUzMGE0MS90YWJsZXJhbmdlOjQ3MzNkYjY1ODZhYTQ4OWM5YzQ0M2MwMDNlNTMwYTQxXzItNS0xLTEtNjIyNA_3fd4c9fb-5920-4fb8-86b2-15b3a268974c"
      unitRef="usd">7145000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i80d00bf2e2b847838c7f16b0dff96c9a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo0NzMzZGI2NTg2YWE0ODljOWM0NDNjMDAzZTUzMGE0MS90YWJsZXJhbmdlOjQ3MzNkYjY1ODZhYTQ4OWM5YzQ0M2MwMDNlNTMwYTQxXzMtMS0xLTEtNjIyNA_a54e628b-6ed3-4146-a9ca-6ef67476dc88"
      unitRef="usd">11971000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i4518c2f1427443a6a2e39d6b62831a43_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo0NzMzZGI2NTg2YWE0ODljOWM0NDNjMDAzZTUzMGE0MS90YWJsZXJhbmdlOjQ3MzNkYjY1ODZhYTQ4OWM5YzQ0M2MwMDNlNTMwYTQxXzMtMy0xLTEtNjIyNA_8bd33935-0514-4acd-a210-629a020368a6"
      unitRef="usd">7312000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i99257061a65446b3a171e066ed0680bc_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo0NzMzZGI2NTg2YWE0ODljOWM0NDNjMDAzZTUzMGE0MS90YWJsZXJhbmdlOjQ3MzNkYjY1ODZhYTQ4OWM5YzQ0M2MwMDNlNTMwYTQxXzMtNS0xLTEtNjIyNA_83d932ac-ee0a-4a17-987e-cd46f7fb97d2"
      unitRef="usd">5584000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i6ff09f50663b47eb8216170275ddcb14_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo0NzMzZGI2NTg2YWE0ODljOWM0NDNjMDAzZTUzMGE0MS90YWJsZXJhbmdlOjQ3MzNkYjY1ODZhYTQ4OWM5YzQ0M2MwMDNlNTMwYTQxXzQtMS0xLTEtNjIyNA_f42003dc-b8ca-4df5-8c47-e0c4df3a6a4a"
      unitRef="usd">25954000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i723bc6799c4d4fdea7f5ef9e2610c3c4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo0NzMzZGI2NTg2YWE0ODljOWM0NDNjMDAzZTUzMGE0MS90YWJsZXJhbmdlOjQ3MzNkYjY1ODZhYTQ4OWM5YzQ0M2MwMDNlNTMwYTQxXzQtMy0xLTEtNjIyNA_b6ac1f6c-59ef-487c-8372-9fa4a42b110d"
      unitRef="usd">15457000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i526dddbedd9a4eff8c4ce470e8222018_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo0NzMzZGI2NTg2YWE0ODljOWM0NDNjMDAzZTUzMGE0MS90YWJsZXJhbmdlOjQ3MzNkYjY1ODZhYTQ4OWM5YzQ0M2MwMDNlNTMwYTQxXzQtNS0xLTEtNjIyNA_a16bdd15-9c31-4db3-8cb8-a4ec10e7961f"
      unitRef="usd">12729000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NTAyMDA_9bdbd9c8-e4a1-481f-b12e-9f6ddf38860d"
      unitRef="usdPerShare">18.57</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NTAyMDQ_2b2cc26d-cdb2-4a32-832b-a10d9cfd5091"
      unitRef="usdPerShare">10.86</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NTAyMDg_254f02de-9ac2-467c-9e56-37f5b3572f60"
      unitRef="usdPerShare">8.00</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NTAyMTI_0d092e43-b530-42fe-bfff-d33e27df9995"
      unitRef="usd">34200000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NTAyMjA_433eb02b-e759-4dca-b625-5cb4de92033f"
      unitRef="usd">40900000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NTAyMjg_40cec71e-22ee-4ccc-be0f-5d8704e731d3"
      unitRef="usd">10200000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzIxOTkwMjMyNjY0MTQ_22df29cf-427f-4a69-b8a2-2fbd9573f68b"
      unitRef="usd">0</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzIxOTkwMjMyNjY0MTQ_e1bb02b3-d1d1-4176-818b-995a3babf51c"
      unitRef="usd">0</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzIxOTkwMjMyNjY0MTQ_fc87f750-c083-496c-a1bc-3dd6ba87d629"
      unitRef="usd">0</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwODU1_e16c2428-157c-4359-a09c-5554f56903ce">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of stock option awards granted to employees and directors were estimated at the date of grant using a Black-Scholes option-pricing model with the following weighted average valuation assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;72&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Expected term (years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;5.98&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;6.23&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;6.18&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.95&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.04&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Expected dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the rights granted to employees under the ESPP was estimated at the date of offer using a Black-Scholes option-pricing model with the following weighted average valuation assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;72&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;74&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;59&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Expected term (years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.27&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.17&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.23&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.27&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.97&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Expected dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i974804de2b2b42ba80d12da8db4c9387_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo2MzU1ZWRiMTExOWE0NWUzYTRjOWJkZDk5Mzg5YTUyMS90YWJsZXJhbmdlOjYzNTVlZGIxMTE5YTQ1ZTNhNGM5YmRkOTkzODlhNTIxXzItMS0xLTEtNjIyNA_7703bd00-98aa-4140-8d18-80641a1244c7"
      unitRef="number">0.72</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i282508e2319d44c99db6dea1846bd565_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo2MzU1ZWRiMTExOWE0NWUzYTRjOWJkZDk5Mzg5YTUyMS90YWJsZXJhbmdlOjYzNTVlZGIxMTE5YTQ1ZTNhNGM5YmRkOTkzODlhNTIxXzItMy0xLTEtNjIyNA_a66e82fd-70ec-4fa5-91ec-5f41f1363a5b"
      unitRef="number">0.68</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="ief86a43e16994f21a01c99d307c4f5cb_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo2MzU1ZWRiMTExOWE0NWUzYTRjOWJkZDk5Mzg5YTUyMS90YWJsZXJhbmdlOjYzNTVlZGIxMTE5YTQ1ZTNhNGM5YmRkOTkzODlhNTIxXzItNS0xLTEtNjIyNA_2e9588be-b2ef-4720-a6dd-c0e1e7dac3ac"
      unitRef="number">0.65</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i974804de2b2b42ba80d12da8db4c9387_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo2MzU1ZWRiMTExOWE0NWUzYTRjOWJkZDk5Mzg5YTUyMS90YWJsZXJhbmdlOjYzNTVlZGIxMTE5YTQ1ZTNhNGM5YmRkOTkzODlhNTIxXzMtMS0xLTEtNjIyNA_13489584-014d-4cd0-bfe3-b7f5f030d336">P5Y11M23D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i282508e2319d44c99db6dea1846bd565_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo2MzU1ZWRiMTExOWE0NWUzYTRjOWJkZDk5Mzg5YTUyMS90YWJsZXJhbmdlOjYzNTVlZGIxMTE5YTQ1ZTNhNGM5YmRkOTkzODlhNTIxXzMtMy0xLTEtNjIyNA_de82425d-8d96-4ea4-947b-ea2c82fd290a">P6Y2M23D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="ief86a43e16994f21a01c99d307c4f5cb_D20190101-20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo2MzU1ZWRiMTExOWE0NWUzYTRjOWJkZDk5Mzg5YTUyMS90YWJsZXJhbmdlOjYzNTVlZGIxMTE5YTQ1ZTNhNGM5YmRkOTkzODlhNTIxXzMtNS0xLTEtNjIyNA_1bbf7419-7da2-4651-a915-e7ce1b611d1e">P6Y2M4D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i974804de2b2b42ba80d12da8db4c9387_D20210101-20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo2MzU1ZWRiMTExOWE0NWUzYTRjOWJkZDk5Mzg5YTUyMS90YWJsZXJhbmdlOjYzNTVlZGIxMTE5YTQ1ZTNhNGM5YmRkOTkzODlhNTIxXzQtMS0xLTEtNjIyNA_955aacd6-d218-4c96-831a-4b8cfa6db310"
      unitRef="number">0.0095</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i282508e2319d44c99db6dea1846bd565_D20200101-20201231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo2MzU1ZWRiMTExOWE0NWUzYTRjOWJkZDk5Mzg5YTUyMS90YWJsZXJhbmdlOjYzNTVlZGIxMTE5YTQ1ZTNhNGM5YmRkOTkzODlhNTIxXzQtMy0xLTEtNjIyNA_e789a413-3402-469f-932e-1b44d547c78b"
      unitRef="number">0.0104</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="ief86a43e16994f21a01c99d307c4f5cb_D20190101-20191231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo2MzU1ZWRiMTExOWE0NWUzYTRjOWJkZDk5Mzg5YTUyMS90YWJsZXJhbmdlOjYzNTVlZGIxMTE5YTQ1ZTNhNGM5YmRkOTkzODlhNTIxXzQtNS0xLTEtNjIyNA_ebffcc48-8fe8-4324-a7c6-1ce90d2af1e2"
      unitRef="number">0.0225</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i974804de2b2b42ba80d12da8db4c9387_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo2MzU1ZWRiMTExOWE0NWUzYTRjOWJkZDk5Mzg5YTUyMS90YWJsZXJhbmdlOjYzNTVlZGIxMTE5YTQ1ZTNhNGM5YmRkOTkzODlhNTIxXzUtMS0xLTEtNjIyNA_17e0a70f-5527-4597-b284-17ed12bb8211"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i282508e2319d44c99db6dea1846bd565_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo2MzU1ZWRiMTExOWE0NWUzYTRjOWJkZDk5Mzg5YTUyMS90YWJsZXJhbmdlOjYzNTVlZGIxMTE5YTQ1ZTNhNGM5YmRkOTkzODlhNTIxXzUtMy0xLTEtNjIyNA_22a13ba7-f217-4ebd-b3ed-becabad3b3e3"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="ief86a43e16994f21a01c99d307c4f5cb_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTo2MzU1ZWRiMTExOWE0NWUzYTRjOWJkZDk5Mzg5YTUyMS90YWJsZXJhbmdlOjYzNTVlZGIxMTE5YTQ1ZTNhNGM5YmRkOTkzODlhNTIxXzUtNS0xLTEtNjIyNA_046c61f2-8133-485c-9480-fa4e6bd0cc04"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions
      contextRef="i01c101a4f7cf450aa40ffeedb09db5d4_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NTAyMzY_c060adb4-2526-45c4-b657-a49d3b2c6ea0"
      unitRef="usd">48300000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i6ff09f50663b47eb8216170275ddcb14_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90ZXh0cmVnaW9uOjZmMGFlMDkwN2I0ZDQ5NGE5NWNiMGQyMDFkMTQ5ZDQ4XzEwOTk1MTE2NTAyNDY_235dab3d-7bb3-4136-a4ba-32dbeb348448">P2Y10M24D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i244281db78a8442b9c0a257906b51942_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpiMjM5OTE0YzcwNWM0ZjA3YTQxNmM5YjM3ZGZjMGJhNS90YWJsZXJhbmdlOmIyMzk5MTRjNzA1YzRmMDdhNDE2YzliMzdkZmMwYmE1XzItMS0xLTEtNjIyNA_d698d20c-d793-4bc9-958d-f2efb59d2c58"
      unitRef="number">0.72</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i2dd9c5db152d4725b2d76fd55b5a67e9_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpiMjM5OTE0YzcwNWM0ZjA3YTQxNmM5YjM3ZGZjMGJhNS90YWJsZXJhbmdlOmIyMzk5MTRjNzA1YzRmMDdhNDE2YzliMzdkZmMwYmE1XzItMy0xLTEtNjIyNA_8c5684bd-96ca-46ba-9ba4-ebf17f92bceb"
      unitRef="number">0.74</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i787e2454cb744d18b9d2a64e35718f88_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpiMjM5OTE0YzcwNWM0ZjA3YTQxNmM5YjM3ZGZjMGJhNS90YWJsZXJhbmdlOmIyMzk5MTRjNzA1YzRmMDdhNDE2YzliMzdkZmMwYmE1XzItNS0xLTEtNjIyNA_854321b5-71d2-4942-b63a-93631a9be002"
      unitRef="number">0.59</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i244281db78a8442b9c0a257906b51942_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpiMjM5OTE0YzcwNWM0ZjA3YTQxNmM5YjM3ZGZjMGJhNS90YWJsZXJhbmdlOmIyMzk5MTRjNzA1YzRmMDdhNDE2YzliMzdkZmMwYmE1XzMtMS0xLTEtNjIyNA_32107172-7b56-438d-a65c-621cb0038ff4">P1Y3M7D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i2dd9c5db152d4725b2d76fd55b5a67e9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpiMjM5OTE0YzcwNWM0ZjA3YTQxNmM5YjM3ZGZjMGJhNS90YWJsZXJhbmdlOmIyMzk5MTRjNzA1YzRmMDdhNDE2YzliMzdkZmMwYmE1XzMtMy0xLTEtNjIyNA_4cf94800-4da4-4736-8ac4-f9c97979b61e">P1Y2M1D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i787e2454cb744d18b9d2a64e35718f88_D20190101-20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpiMjM5OTE0YzcwNWM0ZjA3YTQxNmM5YjM3ZGZjMGJhNS90YWJsZXJhbmdlOmIyMzk5MTRjNzA1YzRmMDdhNDE2YzliMzdkZmMwYmE1XzMtNS0xLTEtNjIyNA_a0633152-157c-4bde-819b-e1ec7800474f">P1Y2M23D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i244281db78a8442b9c0a257906b51942_D20210101-20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpiMjM5OTE0YzcwNWM0ZjA3YTQxNmM5YjM3ZGZjMGJhNS90YWJsZXJhbmdlOmIyMzk5MTRjNzA1YzRmMDdhNDE2YzliMzdkZmMwYmE1XzQtMS0xLTEtNjIyNA_33a71198-3763-42e9-b2b1-85c0213b6d73"
      unitRef="number">0.0027</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i2dd9c5db152d4725b2d76fd55b5a67e9_D20200101-20201231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpiMjM5OTE0YzcwNWM0ZjA3YTQxNmM5YjM3ZGZjMGJhNS90YWJsZXJhbmdlOmIyMzk5MTRjNzA1YzRmMDdhNDE2YzliMzdkZmMwYmE1XzQtMy0xLTEtNjIyNA_d594eebe-af7e-4eac-a6ef-3ac075dba8a2"
      unitRef="number">0.0015</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i787e2454cb744d18b9d2a64e35718f88_D20190101-20191231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpiMjM5OTE0YzcwNWM0ZjA3YTQxNmM5YjM3ZGZjMGJhNS90YWJsZXJhbmdlOmIyMzk5MTRjNzA1YzRmMDdhNDE2YzliMzdkZmMwYmE1XzQtNS0xLTEtNjIyNA_be1f8c59-6501-4095-8dad-33ce2fcdd20f"
      unitRef="number">0.0197</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i244281db78a8442b9c0a257906b51942_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpiMjM5OTE0YzcwNWM0ZjA3YTQxNmM5YjM3ZGZjMGJhNS90YWJsZXJhbmdlOmIyMzk5MTRjNzA1YzRmMDdhNDE2YzliMzdkZmMwYmE1XzUtMS0xLTEtNjIyNA_79fa0eee-a625-4c20-bde1-7dabd688cdcf"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i2dd9c5db152d4725b2d76fd55b5a67e9_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpiMjM5OTE0YzcwNWM0ZjA3YTQxNmM5YjM3ZGZjMGJhNS90YWJsZXJhbmdlOmIyMzk5MTRjNzA1YzRmMDdhNDE2YzliMzdkZmMwYmE1XzUtMy0xLTEtNjIyNA_55c04069-63cd-4aa1-a1fc-87492e27ad51"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i787e2454cb744d18b9d2a64e35718f88_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDIvZnJhZzo2ZjBhZTA5MDdiNGQ0OTRhOTVjYjBkMjAxZDE0OWQ0OC90YWJsZTpiMjM5OTE0YzcwNWM0ZjA3YTQxNmM5YjM3ZGZjMGJhNS90YWJsZXJhbmdlOmIyMzk5MTRjNzA1YzRmMDdhNDE2YzliMzdkZmMwYmE1XzUtNS0xLTEtNjIyNA_8db4284d-d418-429a-bcc2-03abe3ebcd53"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:CompensationAndEmployeeBenefitPlansTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDgvZnJhZzpmYzVhOWEyY2VkYmY0NzNiYmY1NmQ1ZDc0YzlmYmU3MS90ZXh0cmVnaW9uOmZjNWE5YTJjZWRiZjQ3M2JiZjU2ZDVkNzRjOWZiZTcxXzY1Mg_defc5ac8-f0bb-467f-8c65-d482a4d8c28f">Employee Benefit PlanThe Company sponsors a 401(k) defined contribution plan for its employees. Employee contributions are voluntary. In December 2011, the Company adopted the 401(k) Matching Plan, under which the Company makes matching contributions in the form of common stock at a rate of $1.00 for each $2.00 of employee contributions up to a maximum $750 of common stock per employee per year. As of December&#160;31, 2021 and 2020, the Company had reserved 17,813 and 21,930 shares of common stock for issuance pursuant to the 401(k) Matching Plan, respectively. Matching contributions of 4,117, 6,344 and 8,477 shares, or $125,000, $119,000 and $98,000 were issued for the years ended December&#160;31, 2021, 2020 and 2019, respectively.</us-gaap:CompensationAndEmployeeBenefitPlansTextBlock>
    <us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount
      contextRef="i5a7e1b18f9324a43a1cdc926df91d7ac_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDgvZnJhZzpmYzVhOWEyY2VkYmY0NzNiYmY1NmQ1ZDc0YzlmYmU3MS90ZXh0cmVnaW9uOmZjNWE5YTJjZWRiZjQ3M2JiZjU2ZDVkNzRjOWZiZTcxXzM1Ng_3f53174f-01b4-4106-a142-a5a4d14e97c1"
      unitRef="usd">750</us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount>
    <us-gaap:DeferredCompensationArrangementWithIndividualCommonStockReservedForFutureIssuance
      contextRef="i78e508524eb647a182b5c0821d33aebc_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDgvZnJhZzpmYzVhOWEyY2VkYmY0NzNiYmY1NmQ1ZDc0YzlmYmU3MS90ZXh0cmVnaW9uOmZjNWE5YTJjZWRiZjQ3M2JiZjU2ZDVkNzRjOWZiZTcxXzQ0MA_40893cc7-5c05-4997-8e72-4404c73a79ab"
      unitRef="shares">17813</us-gaap:DeferredCompensationArrangementWithIndividualCommonStockReservedForFutureIssuance>
    <us-gaap:DeferredCompensationArrangementWithIndividualCommonStockReservedForFutureIssuance
      contextRef="ia340b17a9d924b36928d4fd88928b7db_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDgvZnJhZzpmYzVhOWEyY2VkYmY0NzNiYmY1NmQ1ZDc0YzlmYmU3MS90ZXh0cmVnaW9uOmZjNWE5YTJjZWRiZjQ3M2JiZjU2ZDVkNzRjOWZiZTcxXzQ0Nw_89e301a1-e6cc-40f6-bb96-5b3283dbdaff"
      unitRef="shares">21930</us-gaap:DeferredCompensationArrangementWithIndividualCommonStockReservedForFutureIssuance>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan
      contextRef="i5a7e1b18f9324a43a1cdc926df91d7ac_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDgvZnJhZzpmYzVhOWEyY2VkYmY0NzNiYmY1NmQ1ZDc0YzlmYmU3MS90ZXh0cmVnaW9uOmZjNWE5YTJjZWRiZjQ3M2JiZjU2ZDVkNzRjOWZiZTcxXzU2NA_6ac72b39-707f-4104-927f-43ae33868c48"
      unitRef="shares">4117</us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan
      contextRef="i8fd8ae9a213446fb9f630e2782414027_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDgvZnJhZzpmYzVhOWEyY2VkYmY0NzNiYmY1NmQ1ZDc0YzlmYmU3MS90ZXh0cmVnaW9uOmZjNWE5YTJjZWRiZjQ3M2JiZjU2ZDVkNzRjOWZiZTcxXzU3MQ_bc35cafb-5fd3-4dc6-9bf4-a21ae121d60e"
      unitRef="shares">6344</us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan
      contextRef="i4a29f044b30e4e65ba6b00d7658c64fc_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDgvZnJhZzpmYzVhOWEyY2VkYmY0NzNiYmY1NmQ1ZDc0YzlmYmU3MS90ZXh0cmVnaW9uOmZjNWE5YTJjZWRiZjQ3M2JiZjU2ZDVkNzRjOWZiZTcxXzEwOTk1MTE2Mjg0NTM_83089354-2dc8-4b8f-80c4-86cd8b7ce38d"
      unitRef="shares">8477</us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan
      contextRef="i5a7e1b18f9324a43a1cdc926df91d7ac_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDgvZnJhZzpmYzVhOWEyY2VkYmY0NzNiYmY1NmQ1ZDc0YzlmYmU3MS90ZXh0cmVnaW9uOmZjNWE5YTJjZWRiZjQ3M2JiZjU2ZDVkNzRjOWZiZTcxXzU4NQ_b5a8b8c1-f4a0-43d1-b69c-4d9d7c5d923b"
      unitRef="usd">125000</us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan
      contextRef="i8fd8ae9a213446fb9f630e2782414027_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDgvZnJhZzpmYzVhOWEyY2VkYmY0NzNiYmY1NmQ1ZDc0YzlmYmU3MS90ZXh0cmVnaW9uOmZjNWE5YTJjZWRiZjQ3M2JiZjU2ZDVkNzRjOWZiZTcxXzU5Mg_ba1f38c6-16b1-4d51-a4fb-33327ae44653"
      unitRef="usd">119000</us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan
      contextRef="i4a29f044b30e4e65ba6b00d7658c64fc_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNDgvZnJhZzpmYzVhOWEyY2VkYmY0NzNiYmY1NmQ1ZDc0YzlmYmU3MS90ZXh0cmVnaW9uOmZjNWE5YTJjZWRiZjQ3M2JiZjU2ZDVkNzRjOWZiZTcxXzEwOTk1MTE2Mjg0Njk_4ec143a0-971a-4410-8c97-11f2f10966a3"
      unitRef="usd">98000</us-gaap:StockIssuedDuringPeriodValueEmployeeBenefitPlan>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzUyOTM_8b82e102-5d73-442d-ba53-a4177fd8de16">Income Taxes&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has reported pre-tax operating losses for all periods presented. The Company has not reflected any benefit for corresponding tax net operating loss carryforwards in the accompanying consolidated financial statements. The Company has established a full valuation allowance against its deferred tax assets due to the uncertainty surrounding the realization of such assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of the Company&#x2019;s losses before income taxes were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Domestic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(120,858)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(102,209)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(34,634)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(278)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(8,161)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(120,335)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(102,487)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(42,795)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of the statutory U.S. federal rate to the Company&#x2019;s effective tax rate is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;U.S. federal tax at statutory rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Foreign tax rate differential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;State, net of federal benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(0.1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;3.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Change in valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(21.8)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(25.0)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(23.2)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(0.5)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of the net deferred tax assets are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.894%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net operating loss carryforwards&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;83,322&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;60,879&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,579&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;4,580&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Research and development credit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ROU asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2,198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other temporary differences&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;514&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2,079&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total gross deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;96,531&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;70,456&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(997)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(389)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Lease liability&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(850)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Non-qualified stock options with 83(b) election&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(15)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(15)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total gross deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1,862)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(404)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net deferred tax assets before valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;94,669&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;70,052&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax asset valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(94,669)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(70,052)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ASC 740 requires that the tax benefit of net operating losses, temporary differences and credit carryforwards be recorded as an asset to the extent that management assesses that realization is &#x201c;more likely than not.&#x201d; Realization of the future tax benefits is dependent on the Company&#x2019;s ability to generate sufficient taxable income within the carryforward period. Because of the Company&#x2019;s recent history of operating losses, management believes that recognition of the deferred tax assets arising from the above-mentioned future tax benefits is currently not more-likely-than-not to be realized and, accordingly, has provided a valuation allowance.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Realization of deferred tax assets is dependent upon future earnings, if any, the timing and amount of which are uncertain. Accordingly, the net deferred tax assets have been fully offset by a valuation allowance. The valuation allowance increased by approximately $24.6 million and $24.3 million during the years ended December&#160;31, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2021, the Company had approximately $342.3 million in federal net operating loss carryforwards to reduce future taxable income. Of this amount, $277.0 million was generated after December 31, 2017 and does not expire per the Tax Cuts and JOBS Act, or the 2017 Tax Act, and can be carried forward indefinitely. The federal net operating loss carryforwards generated prior to January 1, 2018 are subject to a 20-year carryforward period and will begin to expire after 2032. Subsequent to the enactment of the 2018 Tax Act, the utilization of the federal net operating loss carryforwards generated in fiscal year 2019 and onwards is limited to 80% of the federal taxable income. The Company also had approximately $321.5 million in state net operating loss carryforwards to reduce future taxable income, which will begin to expire after 2028, if not utilized.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company had approximately $3.1 million in federal research and development tax credits for each of the years ended December&#160;31, 2021 and 2020. In addition, the Company had approximately $4.0 million in state research and development tax credits for each of the years ended December&#160;31, 2021 and 2020. The federal research credits will begin to expire in the years 2028 through 2035, if not utilized. The state research and development credits have no expiration date and can be carried forward indefinitely.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2021 and 2020, the Company had foreign net operating loss carryforwards of approximately $21.3 million and $35.8 million, respectively, which have no expiration date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Utilization of the Company&#x2019;s net operating losses and credits may be subject to a substantial annual limitation due to the &#x201c;change in ownership&#x201d; provisions of the Internal Revenue Code of 1986, as amended, and similar state provisions. The annual limitation may result in the expiration of net operating losses and credits before utilization.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of the Company&#x2019;s unrecognized tax benefits is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,346&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Additions based on tax positions related to prior year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,447&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;314&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Additions based on tax positions related to current year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,077&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at end of year&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,870&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,346&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The entire amount of the unrecognized tax benefits would not impact the Company&#x2019;s effective tax rate if recognized. The Company has elected to include interest and penalties as a component of tax expense. During the years ended December&#160;31, 2021 and 2020, the Company did not recognize accrued interest and penalties related to unrecognized tax benefits. The Company does not anticipate that the amount of existing unrecognized tax benefits will significantly increase or decrease during the next 12 months.&lt;/span&gt;&lt;/div&gt;The Company files federal, state and foreign income tax returns with varying statutes of limitations. The tax years from inception in 2008 to December&#160;31, 2020 remain subject to examination.</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzUyOTQ_b28f3109-d257-48ae-9272-b1172fe466ac">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of the Company&#x2019;s losses before income taxes were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Domestic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(120,858)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(102,209)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(34,634)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(278)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(8,161)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(120,335)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(102,487)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(42,795)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTphZWZjZDUwNDgyYTQ0YjQxYmE2M2UxNDRjMTcyZGNmNC90YWJsZXJhbmdlOmFlZmNkNTA0ODJhNDRiNDFiYTYzZTE0NGMxNzJkY2Y0XzItMS0xLTEtNjIyNA_050baa2e-c979-4ac2-8da6-9ef20bb80726"
      unitRef="usd">-120858000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTphZWZjZDUwNDgyYTQ0YjQxYmE2M2UxNDRjMTcyZGNmNC90YWJsZXJhbmdlOmFlZmNkNTA0ODJhNDRiNDFiYTYzZTE0NGMxNzJkY2Y0XzItMy0xLTEtNjIyNA_202205fc-7f6b-4712-b81f-f0f7a298777e"
      unitRef="usd">-102209000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTphZWZjZDUwNDgyYTQ0YjQxYmE2M2UxNDRjMTcyZGNmNC90YWJsZXJhbmdlOmFlZmNkNTA0ODJhNDRiNDFiYTYzZTE0NGMxNzJkY2Y0XzItNS0xLTEtNjIyNA_4013f253-50f3-4d9e-8aa2-e7008d69cc15"
      unitRef="usd">-34634000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTphZWZjZDUwNDgyYTQ0YjQxYmE2M2UxNDRjMTcyZGNmNC90YWJsZXJhbmdlOmFlZmNkNTA0ODJhNDRiNDFiYTYzZTE0NGMxNzJkY2Y0XzMtMS0xLTEtNjIyNA_05ad9eec-8e89-46dc-976f-7d098386f571"
      unitRef="usd">523000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTphZWZjZDUwNDgyYTQ0YjQxYmE2M2UxNDRjMTcyZGNmNC90YWJsZXJhbmdlOmFlZmNkNTA0ODJhNDRiNDFiYTYzZTE0NGMxNzJkY2Y0XzMtMy0xLTEtNjIyNA_66efaa0e-a2c7-488a-ab80-46d2bc8516a0"
      unitRef="usd">-278000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTphZWZjZDUwNDgyYTQ0YjQxYmE2M2UxNDRjMTcyZGNmNC90YWJsZXJhbmdlOmFlZmNkNTA0ODJhNDRiNDFiYTYzZTE0NGMxNzJkY2Y0XzMtNS0xLTEtNjIyNA_8d1b2cac-2f4a-4046-823f-240914c4c585"
      unitRef="usd">-8161000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTphZWZjZDUwNDgyYTQ0YjQxYmE2M2UxNDRjMTcyZGNmNC90YWJsZXJhbmdlOmFlZmNkNTA0ODJhNDRiNDFiYTYzZTE0NGMxNzJkY2Y0XzQtMS0xLTEtNjIyNA_f75e4df4-58b7-460c-ac51-4e5eb39c74a5"
      unitRef="usd">-120335000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTphZWZjZDUwNDgyYTQ0YjQxYmE2M2UxNDRjMTcyZGNmNC90YWJsZXJhbmdlOmFlZmNkNTA0ODJhNDRiNDFiYTYzZTE0NGMxNzJkY2Y0XzQtMy0xLTEtNjIyNA_8c227fc6-0f3b-4060-85c2-3d098d9c52ec"
      unitRef="usd">-102487000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTphZWZjZDUwNDgyYTQ0YjQxYmE2M2UxNDRjMTcyZGNmNC90YWJsZXJhbmdlOmFlZmNkNTA0ODJhNDRiNDFiYTYzZTE0NGMxNzJkY2Y0XzQtNS0xLTEtNjIyNA_1fd2ef09-9946-4a2a-8d4d-ab402a0a36f4"
      unitRef="usd">-42795000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzUyOTU_021b88d1-e95c-444e-8ae9-36f23c38ad5c">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of the statutory U.S. federal rate to the Company&#x2019;s effective tax rate is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;U.S. federal tax at statutory rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Foreign tax rate differential&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;State, net of federal benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(0.1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;1.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;3.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Change in valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(21.8)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(25.0)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(23.2)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(0.5)&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzItMS0xLTEtNjIyNA_b102f5a6-a379-436c-b0e1-78ae9ae5aba0"
      unitRef="number">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzItMy0xLTEtNjIyNA_b42a7d0f-e93f-4d29-a3b9-803e8d78f7ef"
      unitRef="number">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzItNS0xLTEtNjIyNA_83213f99-8b48-40dd-8b60-658ecf344c17"
      unitRef="number">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzMtMS0xLTEtNjIyNA_40d3eb9d-1373-4493-8abb-43538c2560ac"
      unitRef="number">0.000</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzMtMy0xLTEtNjIyNA_ce6ba9a4-cb38-4236-b4f1-420a718a4fa8"
      unitRef="number">0</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzMtNS0xLTEtNjIyNA_e7d8ab51-9c48-4f14-a613-65ecd7901f02"
      unitRef="number">0.017</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzQtMS0xLTEtNjIyNA_f327b2be-ffb5-405c-845a-132bfbcc61d6"
      unitRef="number">0</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzQtMy0xLTEtNjIyNA_11e215b7-205f-4690-99ea-8bdad6e3f03d"
      unitRef="number">-0.001</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzQtNS0xLTEtNjIyNA_e670a5db-f8c6-4cd6-9e87-e1866daa7388"
      unitRef="number">0</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzUtMS0xLTEtNjIyNA_44899739-c8ec-45d2-b28f-0ad98761e7c0"
      unitRef="number">0.013</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzUtMy0xLTEtNjIyNA_91c68223-877c-4651-92e8-1f08bb14c6ef"
      unitRef="number">0.038</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzUtNS0xLTEtNjIyNA_9d276b96-07c7-40ce-a6dd-a506665173b6"
      unitRef="number">0.002</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzYtMS0xLTEtNjIyNA_e14c816b-fc86-43dc-af7f-9d2e5075c846"
      unitRef="number">-0.218</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzYtMy0xLTEtNjIyNA_5a3f0284-144d-4662-8fdf-4e9a6db4484e"
      unitRef="number">-0.250</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzYtNS0xLTEtNjIyNA_215a636e-976a-42c7-9a73-6849c6d41982"
      unitRef="number">-0.232</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzctMS0xLTEtNjIyNA_f8c9c65c-ef0e-4edd-a0e3-0f0db0f8d577"
      unitRef="number">-0.005</us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzctMy0xLTEtNjIyNA_5f1681a1-f78f-4a3f-a47d-c210876268c3"
      unitRef="number">0.003</us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzctNS0xLTEtNjIyNA_36d39e6e-8e87-4f07-a70d-cc460444553d"
      unitRef="number">0.002</us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzgtMS0xLTEtNjIyNA_8f38909d-68d7-4df7-96ed-ec06546fd020"
      unitRef="number">0.000</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzgtMy0xLTEtNjIyNA_11c2d2dc-ba34-49b5-be4b-fe59805ebeda"
      unitRef="number">0.000</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxZmY3YmI1OTI1MjU0MDk4YjA2NWU0MjQ0OTU5MTc1OS90YWJsZXJhbmdlOjFmZjdiYjU5MjUyNTQwOThiMDY1ZTQyNDQ5NTkxNzU5XzgtNS0xLTEtNjIyNA_07644a6a-23ce-4083-8e49-a624c602c4cc"
      unitRef="number">0.000</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzUyOTE_13763d66-95b4-43df-9495-fe1077d893b7">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of the net deferred tax assets are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.894%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net operating loss carryforwards&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;83,322&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;60,879&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;7,579&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;4,580&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Research and development credit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ROU asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2,198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other temporary differences&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;514&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2,079&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total gross deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;96,531&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;70,456&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(997)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(389)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Lease liability&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(850)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Non-qualified stock options with 83(b) election&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(15)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(15)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total gross deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1,862)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(404)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net deferred tax assets before valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;94,669&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;70,052&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax asset valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(94,669)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(70,052)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzMtMS0xLTEtNjIyNA_59cbbb5e-4fb0-407b-9d1f-aeb8d1f46f65"
      unitRef="usd">83322000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzMtMy0xLTEtNjIyNA_b79846a1-0fba-4998-a76a-a9bce973bbbe"
      unitRef="usd">60879000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzQtMS0xLTEtNjIyNA_0ab4fea0-664f-4829-823c-b0d4593641c1"
      unitRef="usd">7579000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzQtMy0xLTEtNjIyNA_c2c20e35-6b9e-4004-8de3-571fdd67c28f"
      unitRef="usd">4580000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzUtMS0xLTEtNjIyNA_be9bf57a-8c7b-4e82-80d5-d78457780249"
      unitRef="usd">2918000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzUtMy0xLTEtNjIyNA_34b0f5a4-8f13-4d88-a2e5-b974e6aec2d7"
      unitRef="usd">2918000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <ngm:DeferredTaxAssetRightOfUseAsset
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzYtMS0xLTEtNjIyNA_4cec6fee-dd5e-4852-9a25-a8ab31988d95"
      unitRef="usd">2198000</ngm:DeferredTaxAssetRightOfUseAsset>
    <ngm:DeferredTaxAssetRightOfUseAsset
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzYtMy0xLTEtNjIyNA_019f4c22-ae63-43ef-b12b-0de0b96662d1"
      unitRef="usd">0</ngm:DeferredTaxAssetRightOfUseAsset>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzctMS0xLTEtNjIyNA_0d33fe75-1f90-45b4-8f07-f3a8b11a6693"
      unitRef="usd">514000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzctMy0xLTEtNjIyNA_5bd7c8c6-495f-475b-a7f6-d9459db4c598"
      unitRef="usd">2079000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzgtMS0xLTEtNjIyNA_dc29df28-5ed8-42a3-9552-906c7b9bd87d"
      unitRef="usd">96531000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzgtMy0xLTEtNjIyNA_358dc494-eb6d-4f0c-a4f3-8072f79c05fa"
      unitRef="usd">70456000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzEwLTEtMS0xLTE5NDQy_b6680d0f-dfca-4db0-a81a-e4db8aaafca4"
      unitRef="usd">997000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzEwLTMtMS0xLTE5NDQy_3b8a8899-f817-415c-a456-68667db04171"
      unitRef="usd">389000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesLeasingArrangements
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzEwLTEtMS0xLTYyMjQ_b8c4cd97-7442-49a6-a0b9-0daa3e7272ec"
      unitRef="usd">850000</us-gaap:DeferredTaxLiabilitiesLeasingArrangements>
    <us-gaap:DeferredTaxLiabilitiesLeasingArrangements
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzEwLTMtMS0xLTYyMjQ_72877de8-7c1e-46e7-99e9-3f8b210d722a"
      unitRef="usd">0</us-gaap:DeferredTaxLiabilitiesLeasingArrangements>
    <ngm:DeferredTaxLiabilitiesNonQualifiedStockOptions
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzExLTEtMS0xLTYyMjQ_35b18e4f-7476-4c23-b698-832c2f405d5d"
      unitRef="usd">15000</ngm:DeferredTaxLiabilitiesNonQualifiedStockOptions>
    <ngm:DeferredTaxLiabilitiesNonQualifiedStockOptions
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzExLTMtMS0xLTYyMjQ_91c0f3c3-7ce9-4259-8654-feb0ec0a3fa6"
      unitRef="usd">15000</ngm:DeferredTaxLiabilitiesNonQualifiedStockOptions>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzEyLTEtMS0xLTYyMjQ_75152a20-8faf-44ef-ad13-a13cd61f8547"
      unitRef="usd">1862000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzEyLTMtMS0xLTYyMjQ_94e02bda-8bfa-478b-aa30-2f4bfb8a012d"
      unitRef="usd">404000</us-gaap:DeferredIncomeTaxLiabilities>
    <ngm:DeferredTaxAssetsNetBeforeValuationAllowance
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzEzLTEtMS0xLTYyMjQ_4f61f9b7-a552-4f9f-b247-ed952dca59e1"
      unitRef="usd">94669000</ngm:DeferredTaxAssetsNetBeforeValuationAllowance>
    <ngm:DeferredTaxAssetsNetBeforeValuationAllowance
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzEzLTMtMS0xLTYyMjQ_cc7b5aa8-4059-446d-9ef6-215e8a1e2a4d"
      unitRef="usd">70052000</ngm:DeferredTaxAssetsNetBeforeValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzE0LTEtMS0xLTYyMjQ_c0da979c-39e3-423a-bcc4-643aea241a7a"
      unitRef="usd">94669000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzE0LTMtMS0xLTYyMjQ_771c2360-844b-41ff-83ec-ac99782a7ba9"
      unitRef="usd">70052000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzE1LTEtMS0xLTYyMjQ_2503a27f-557c-4701-99c4-fbb18b0baea0"
      unitRef="usd">0</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZToxYzY1YzQ4ZjYzZTQ0ZWJlOTA4OGU2YzU2NzNjZjM4Mi90YWJsZXJhbmdlOjFjNjVjNDhmNjNlNDRlYmU5MDg4ZTZjNTY3M2NmMzgyXzE1LTMtMS0xLTYyMjQ_f31115e9-f08a-4cdc-846e-a2b7173a2894"
      unitRef="usd">0</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzE1OTM_d179f959-d7f4-440f-8bfe-23578260cb44"
      unitRef="usd">24600000</us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount>
    <us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzE2MDA_09fb8c9e-6a1b-431c-a7b7-e52bf209cf58"
      unitRef="usd">24300000</us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i15d3df4198e1404987577241fb2ee2fd_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzE2OTE_b71e8781-149e-421d-9788-ae446b0c4baa"
      unitRef="usd">342300000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="icd570471846d44629ce42330f89d2f67_I20171231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzEwOTk1MTE2MzQ0NDE_58215372-852a-45f2-8107-d8184aa47649"
      unitRef="usd">277000000</us-gaap:OperatingLossCarryforwards>
    <ngm:NetOperatingLossCarryforwardsExpirationPeriod
      contextRef="i8238090fc69b4c5b86760d25160a7116_D20180101-20181231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzIwMjE_3d30203e-fb6a-4a88-81d7-6d6f3b220b5b">P20Y</ngm:NetOperatingLossCarryforwardsExpirationPeriod>
    <ngm:PercentageOfNetOperatingLossCarryforwardsUtilizationLimitOfTaxableIncomeSubsequentToEnactmentOfTwoThousandSeventeenTaxAct
      contextRef="iaf1a8a37e10a4482b0b7dfa91f67c88e_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzIyNDk_69693296-6a81-4947-88f3-d4b305b8433a"
      unitRef="number">0.80</ngm:PercentageOfNetOperatingLossCarryforwardsUtilizationLimitOfTaxableIncomeSubsequentToEnactmentOfTwoThousandSeventeenTaxAct>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i1dc3356045ea4b18a03e65b344629372_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzIzMTg_a5c67df9-e892-4524-97ba-5894b5c4cf16"
      unitRef="usd">321500000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="i15d3df4198e1404987577241fb2ee2fd_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzI0ODA_8af3bb70-e41c-49b0-b55b-166fceb73c9b"
      unitRef="usd">3100000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="i5462ebbb7cf042229acce60f2aa863f9_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzI0ODA_c410e274-28cd-4890-b1a6-5c2f273b087e"
      unitRef="usd">3100000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="i1dc3356045ea4b18a03e65b344629372_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzI2MTM_2a322d16-30e3-4b17-876b-8d68b9f74984"
      unitRef="usd">4000000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="i4ce4dd11d9b44894b0d6d857f519753b_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzI2MTM_85317f4e-c085-4d86-ba2e-493cbb3deac1"
      unitRef="usd">4000000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:OperatingLossCarryforwards
      contextRef="ief9c3b1fc0ba46ff9e778cbe46733068_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzI5OTU_fe126f16-51f8-4505-9c24-b3d9355e100c"
      unitRef="usd">21300000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="ibdcf12795901470e9c37058c4813bdb6_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzMwMDI_c21f9862-090f-47fa-b9da-020b941d5761"
      unitRef="usd">35800000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzUyOTI_b719f0cf-a4ce-478a-b0d2-d47a41054cc9">&lt;div style="margin-top:6pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of the Company&#x2019;s unrecognized tax benefits is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:56.462%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.556%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.558%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,346&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Additions based on tax positions related to prior year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,447&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;314&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Additions based on tax positions related to current year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,077&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at end of year&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,870&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,346&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTpjNzhiNDQ4NWY3NTE0MjY3YWYyNGYxYTc1ZjM4MWZiOS90YWJsZXJhbmdlOmM3OGI0NDg1Zjc1MTQyNjdhZjI0ZjFhNzVmMzgxZmI5XzItMS0xLTEtNjIyNA_ac3abe43-624f-4e25-bb4c-5a06a4c5126b"
      unitRef="usd">10346000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="if42cabb4bff4485b9f877d871f462439_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTpjNzhiNDQ4NWY3NTE0MjY3YWYyNGYxYTc1ZjM4MWZiOS90YWJsZXJhbmdlOmM3OGI0NDg1Zjc1MTQyNjdhZjI0ZjFhNzVmMzgxZmI5XzItMy0xLTEtNjIyNA_1b4bf6a2-8d6d-41d9-a623-e1f5f52f6611"
      unitRef="usd">3819000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i87ab7eb7f7384aa7bbb6951273454afc_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTpjNzhiNDQ4NWY3NTE0MjY3YWYyNGYxYTc1ZjM4MWZiOS90YWJsZXJhbmdlOmM3OGI0NDg1Zjc1MTQyNjdhZjI0ZjFhNzVmMzgxZmI5XzItNS0xLTEtNjIyNA_4d9cb251-c6ad-42d9-aa46-3b0248bde72b"
      unitRef="usd">3819000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTpjNzhiNDQ4NWY3NTE0MjY3YWYyNGYxYTc1ZjM4MWZiOS90YWJsZXJhbmdlOmM3OGI0NDg1Zjc1MTQyNjdhZjI0ZjFhNzVmMzgxZmI5XzMtMS0xLTEtNjIyNA_e5c554ba-bbe4-4b62-9e0a-3ad48fd48893"
      unitRef="usd">4447000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTpjNzhiNDQ4NWY3NTE0MjY3YWYyNGYxYTc1ZjM4MWZiOS90YWJsZXJhbmdlOmM3OGI0NDg1Zjc1MTQyNjdhZjI0ZjFhNzVmMzgxZmI5XzMtMy0xLTEtNjIyNA_747e2a04-2205-4497-a067-4f8c038134f7"
      unitRef="usd">314000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTpjNzhiNDQ4NWY3NTE0MjY3YWYyNGYxYTc1ZjM4MWZiOS90YWJsZXJhbmdlOmM3OGI0NDg1Zjc1MTQyNjdhZjI0ZjFhNzVmMzgxZmI5XzMtNS0xLTEtNjIyNA_0a28ee83-39e8-42c7-88b2-2541ea35916f"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="ia394dcdb7fd84ce6b09ce30faa7d28aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTpjNzhiNDQ4NWY3NTE0MjY3YWYyNGYxYTc1ZjM4MWZiOS90YWJsZXJhbmdlOmM3OGI0NDg1Zjc1MTQyNjdhZjI0ZjFhNzVmMzgxZmI5XzQtMS0xLTEtNjIyNA_343ac505-2339-4ea9-a0fd-bae7f06debb7"
      unitRef="usd">11077000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="ie7cb37c367dd4dc298e73e0569bcb8ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTpjNzhiNDQ4NWY3NTE0MjY3YWYyNGYxYTc1ZjM4MWZiOS90YWJsZXJhbmdlOmM3OGI0NDg1Zjc1MTQyNjdhZjI0ZjFhNzVmMzgxZmI5XzQtMy0xLTEtNjIyNA_013d9cc4-c3d8-464d-91a4-b248a6dbda2f"
      unitRef="usd">6213000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="if2b0367931d54dbbab274a91ff4488b4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTpjNzhiNDQ4NWY3NTE0MjY3YWYyNGYxYTc1ZjM4MWZiOS90YWJsZXJhbmdlOmM3OGI0NDg1Zjc1MTQyNjdhZjI0ZjFhNzVmMzgxZmI5XzQtNS0xLTEtNjIyNA_20d31588-3fc8-4f20-91d1-dbb6fbbb2bd8"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTpjNzhiNDQ4NWY3NTE0MjY3YWYyNGYxYTc1ZjM4MWZiOS90YWJsZXJhbmdlOmM3OGI0NDg1Zjc1MTQyNjdhZjI0ZjFhNzVmMzgxZmI5XzUtMS0xLTEtNjIyNA_84ad8879-e1df-4b66-a3b5-f70d04e3c9d5"
      unitRef="usd">25870000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTpjNzhiNDQ4NWY3NTE0MjY3YWYyNGYxYTc1ZjM4MWZiOS90YWJsZXJhbmdlOmM3OGI0NDg1Zjc1MTQyNjdhZjI0ZjFhNzVmMzgxZmI5XzUtMy0xLTEtNjIyNA_229138a4-df24-4a87-aa92-6db6e85ef6f9"
      unitRef="usd">10346000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="if42cabb4bff4485b9f877d871f462439_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90YWJsZTpjNzhiNDQ4NWY3NTE0MjY3YWYyNGYxYTc1ZjM4MWZiOS90YWJsZXJhbmdlOmM3OGI0NDg1Zjc1MTQyNjdhZjI0ZjFhNzVmMzgxZmI5XzUtNS0xLTEtNjIyNA_5dbeefbc-bed3-4820-8edc-27fe41466932"
      unitRef="usd">3819000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="i0ed4f52c045c4751b51f8bd997aecf17_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzIxOTkwMjMyNjA4NTI_129d0d96-a2a3-44bc-97fe-771cc1c8eff5"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="i9d4476105fda483a8087815221af3bb6_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjFmOGE5NDNlNzI2YTQ1MDA4ODcwNzljNzgzZjBkOWY5L3NlYzoxZjhhOTQzZTcyNmE0NTAwODg3MDc5Yzc4M2YwZDlmOV8xNTQvZnJhZzpkMDdkNDJhMTg3YTQ0NjdkOTJmMTAyMTFhMjlmNzM4OS90ZXh0cmVnaW9uOmQwN2Q0MmExODdhNDQ2N2Q5MmYxMDIxMWEyOWY3Mzg5XzIxOTkwMjMyNjA4NTI_8e5a4300-54c6-4482-807e-06defe90d90a"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
</xbrl>
