<?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/2020-01-31"
  xmlns:dei="http://xbrl.sec.gov/dei/2020-01-31"
  xmlns:enph="http://enphase.com/20201231"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2020-01-31"
  xmlns:us-gaap="http://fasb.org/us-gaap/2020-01-31"
  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="enph-20201231.xsd" xlink:type="simple"/>
    <context id="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iaa9afa44e8ea442b83fdf19c106d4cc9_I20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <instant>2020-06-30</instant>
        </period>
    </context>
    <context id="i6380541d96174560a309beb973a7a048_I20210208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <instant>2021-02-08</instant>
        </period>
    </context>
    <context id="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="ib54a0c0993bc47cd8c46bb52807fabdd_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="ieb43984ec31443b3bf568a18a7703d34_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i06f5a5959829426aa1a7e12543e7a597_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i80ec10162f544449aec63264c9ab43e1_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i313ff8cf793547cfaaab91c7ecbea720_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i1da68dc2983d4534845ece1dc6599aac_D20170101-20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="i81af7ec9aa6d4bffa6c85a334a791078_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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>2017-12-31</instant>
        </period>
    </context>
    <context id="ia6268b6eb99c4c21a7b9e674f05b7e70_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i4e8453fbca6f467c8654ff7b0bd828ba_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i2de79d6c7d0a4ca79575cac872cd7e30_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i48b64c9c6a38419baa22863383554005_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i5fd1fdb3ea924f8e8bcddfda15cf031e_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i2d4f89043aef4ad3b11f98a889e08adc_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i6ad88192904e4e1e89b6e8c69d1c6359_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i410801cbba934d65ad91e7ee1c9bc908_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="ib632e5c4de99474bafaa537bfe3dd57c_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i1842cb56ea004bae997714ecb5bcda08_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="idb284a1fce674b2bb8100244aa24d8e4_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i3e2f7da476d740edb1f721ba7ccf4213_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i0de7d93ecc184767965b7fa7750a8ed3_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="ie6e273e1c2304021b392c0969e1e32e7_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="iaf272a66dee94fb28906218c4fa2b48f_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i1f6e9458407c487991aab9f5fb100105_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i12420449da734b418f2daa32e09521ea_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i7378881eab634578bbf6eec31bedeb05_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="iff7adff2d75a44cb92bca24ae66ccfb5_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="ia70d008829a642f19dd7ace2b0408068_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i29fae38634db447aa270394aeb97e896_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="ifebbef0b84e04d0797d94ccc3d0e06ea_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i366f80a6576746e183023fd17c4e8ca0_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i0636a82c72244bb7b7bed735ff738388_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="ib910191441924684909a321b264dc252_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="id4cf7db73277476caa207918214c53e5_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="idba5f1ab7df7462d91579400fad23171_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="ib12e87c4edb24474838099f3b33db327_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i8136b1a28a8748329875b612fb459ee3_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="id59ea6d1ab7849aba031da54569bf40d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic2bca91224874214bdd63056fd92036f_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ifad06bdb0f404ecbaf17dade497a5f5b_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i739fc3dd830e4196a79093e85666e8de_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">enph:MonitoringHardwareAndServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i3fe24bdd86f64699bb4b2d701349ac80_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">enph:CommunicationAccessoriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i7b39fe94806642daa4d74c4239cf343f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">enph:CommunicationAccessoriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i696c400045cb4319b92de20068589dc7_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="ib946ee6ab2bf476f862498fcc7c97f9c_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i049d446b48ac485cb8e60d490fa327c7_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0d4d6da4f475450d9f9e3504520a9e8f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">enph:FirstAndSecondGenerationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie1e84d8ed0ae4708a0b2d20ecc704c81_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">enph:ThirdandFourthGenerationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0e9ea099b3cf4a2b94e39a29979207c1_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">enph:EnvoyCommunicationsGatewayMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i9dfe544fca684122a94d803baf7a97b1_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">enph:ACBatteryStorageSolutionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i738e7c5f49e743eca371b9b98641fd2f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="icf395ba8d7384d26bfc43f27b2d18a89_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ia775cb3eda21479e9199f376db92f7f7_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">enph:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic621f95ecf774b2fae8a8d9bdfa7d5e8_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">enph:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i6ec5d73ed01d4b44b19fc6cb6fac2b79_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i708d2ce3910e436397ce564882237942_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="iff06c57cc9e84b5ea73a7eb91d67f022_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i7af845f8e6284fb4a3a543317fe05e5a_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i5c76a5f2b43146a1a475eebc6f528ae5_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2021-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i4cfb83d6548246bd8d8b9d7bdddb7e51_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2022-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i550c1567ada549168286619637ba196a_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2023-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i73e66a0daea2469da3afaf3dc0b30d35_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2024-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i5a769a3bce8b4532aa1f8d19c57035c1_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2025-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i4b63722f0ce048a8b4f7bdb9b2fd11b5_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2026-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ic633efcd4970478a9295f4dd29c88de2_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="idaa54b1e40914ef8a5cb137578d843be_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="if1fe129676bd45c0becaa28f52bc50aa_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ifeef2c8dfe05488298a159686861ee0e_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ica9976d20693428ba920b27006546602_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="if33f497e17b143688eb27d0508f7abd8_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i91e6f5e31bf04cd0b1d8e3d97a4e67f5_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i3c1f48c4f8284c06a7677787c2d70e36_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i549cd259846f493ab9fd4726b77ed61e_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="idb02a23e58a84f8ba879be4f010078d2_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ice0cdf9f18d94c06839e281f740af817_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="iea8e6280418e4431bb96425b4bd914cd_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ifda2a63d705e4f9d9cc0bd1a8084e6d5_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="if27d092a1ffd4b5b82f9bca93537c9d7_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iba7c40aff18146d2b89817f25ec404ce_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="icb5118ea906d4f249d981ca9153d6bab_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i8eba0aa099944d3e8efcb154fdeaa541_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i02b632f49daf47229232081b3c411ec3_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8bdb4aa1dba542558147facefe6d7220_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="icf5a85e9be524424bee33a6d576ffe2e_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i36803c9c7aa34a839561368ab8dd1716_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i8114e9cfa2954fd1a9d1c757d6d7ba83_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ia0ce92351e5a4949b3b463ca0f451fa8_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ia9f7fd1f22c0423194acd96954027bd6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i3bac52d7fedf424d813a754915f2da6f_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ida78421e620346699248cae013ecace8_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ia35b450705e942f28e4a481e721d9d8a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8f86549b9e9a4ccda8f10a17f3646535_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i8a39c745c2044aa0997a4ba03b1c9a05_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i57b54946a23d4bbd91898f1c83daf2c4_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i257a9f0920d24400b182be68c32e17bf_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i48ad8ffbc8874dcfac449c4312d79eac_D20180809-20180809">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SunPowersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-09</startDate>
            <endDate>2018-08-09</endDate>
        </period>
    </context>
    <context id="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SunPowersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-09</startDate>
            <endDate>2018-08-09</endDate>
        </period>
    </context>
    <context id="ibd8059cf260947fb9be3585574d5c387_I20180809">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-08-09</instant>
        </period>
    </context>
    <context id="i79eb7af78c024c54bd52de054491961e_D20180809-20180809">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SunPowersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-09</startDate>
            <endDate>2018-08-09</endDate>
        </period>
    </context>
    <context id="i8ddf985280bc40f49ff93f04ee61864f_D20201001-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SunPowersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-10-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="id3da627f86bc4b8184a1d004e94f1deb_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="enph:WarrantyVariableAxis">enph:FailureRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i29f23aafd7804d4ca5fc3fc72a45418a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="enph:WarrantyVariableAxis">enph:IncreasedTariffsAndLaborReimbursementCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2473c23286bb453ab46401c0ea9bf966_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="enph:WarrantyVariableAxis">enph:IncreasedUSTariffsForProductsManufacturedInChinaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i08c5cb96347b46849c043c82b3689a6d_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="enph:WarrantyVariableAxis">enph:FailureRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">enph:SecondAndThirdGenerationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="iaed474da7189492792943413c99025ff_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="enph:WarrantyVariableAxis">enph:BackwardsCompatibilityCablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="ia706d026f023488baf44ccc3fd69b4fa_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="enph:WarrantyVariableAxis">enph:FailureRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">enph:SecondAndThirdGenerationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="ida937db624484a4db18ecb75478b81d1_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="enph:WarrantyVariableAxis">enph:ClaimRatesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i2269ef17f65340bda153b02205d5418c_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="enph:WarrantyVariableAxis">enph:LaborReimbursementCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i154592d49dac41ad9001e8a924ee3f71_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="enph:WarrantyVariableAxis">enph:DiscountRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i89050755ddf4418a806996c63ef626ad_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-09</instant>
        </period>
    </context>
    <context id="ieba3e8451fe84002ba85c9ed20cdfcde_I20200520">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-05-20</instant>
        </period>
    </context>
    <context id="i6685c6abcaca4b288831b8a845b82d40_I20200520">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-05-20</instant>
        </period>
    </context>
    <context id="i59806dc2bf06478da777591b1851b53c_I20200520">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <instant>2020-05-20</instant>
        </period>
    </context>
    <context id="i13fef4773a1d41418900202b53492efd_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i2aa8f5c59884422f92f393dc5ee9f09a_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i1439af592e624d169b06796d7e47100a_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="ic9b3c80d25c34617bc8fba16f1349579_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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>2019-12-31</instant>
        </period>
    </context>
    <context id="i525a6e07daed4ac984932cee0fe48aba_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">us-gaap:WarrantyRightsAndObligationsFairValueOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i52fd9893ed1c431bbb9670829fe5d4d4_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">us-gaap:WarrantyRightsAndObligationsFairValueOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="id83eaf8ecf1d47e4a9a80fbfafb6a6c7_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">us-gaap:WarrantyRightsAndObligationsFairValueOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i27dd9b4b0ddf4061940237a2ddfa3117_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">us-gaap:WarrantyRightsAndObligationsFairValueOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i7dced1dd8ab24dd79e30e23675389888_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">us-gaap:WarrantyRightsAndObligationsFairValueOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i3fee2a58eb6d499ca8b6f0a3640e0546_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">us-gaap:WarrantyRightsAndObligationsFairValueOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="ic59f5e430f57472884e21a432fe22b95_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">us-gaap:WarrantyRightsAndObligationsFairValueOptionMember</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="i9ce4ec7fc30c45628fca5bc829b3a41e_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:WarrantyRightsAndObligationsFairValueOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">enph:MeasurementInputProfitElementAndRiskPremiumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="icf6917d6dcfd44caaa3f3229030864c4_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:WarrantyRightsAndObligationsFairValueOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">enph:MeasurementInputProfitElementAndRiskPremiumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i079dffdc4bb04ec698b0daae144a1c37_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:WarrantyRightsAndObligationsFairValueOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputEntityCreditRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i84fa9117946442b3809a83319899bf62_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:WarrantyRightsAndObligationsFairValueOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputEntityCreditRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="icf4f0a12e8394bb3913270d14c07c1e4_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iabfb9d1f67414f4d87809f7d00fd78da_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i9787948539f84e27871408ca936c475b_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i039c5c5cdc18445996c25d7e274b2419_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:AssetImpairmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i080285bfa4a64715b5e4dcf4a55d396f_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:AssetImpairmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ibd82440942494311a424afea1c03276f_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:AssetImpairmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i2e9c5d115a6d4e1ba7e98c8c12f024c9_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:ConsultantsEngagedInRestructuringActivitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i723ba8f37535441c880dbb0edf2c4ec4_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:ConsultantsEngagedInRestructuringActivitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="id7a2cd97149e4e6dab566f46e0129a05_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:ConsultantsEngagedInRestructuringActivitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i142633a1b6ff46b5bb801aeca102dfe6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:LeaseLossReservesAndContractTerminationCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="if216c45d932d4d9fb534508be2e9258e_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:LeaseLossReservesAndContractTerminationCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i38919437aef345d089d69cf590282fdb_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:LeaseLossReservesAndContractTerminationCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i894a1e078c844a0e8b6cbeec89f20abb_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i9a666e6155f14f6fa9380bbb3d1bfa7d_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:ContractTerminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="iea626abbe41d432883859f1285399896_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i46ee5fde2a534642ba8a724b989ec80f_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i7d0f57dd07ee49d09dd0cc17e5756162_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:ContractTerminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="if4cd27e3416c4c3cb54d618a4c097cd4_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i7d7a46c2562148f08dc4971e17002b14_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ia79fcc13a4b54503882c42c90ffcbd7d_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:ContractTerminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ic86354ae6e0940b398980892614900ec_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i5af88ed8c2c046a883004054fbc6e44a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ibd6d7ba5ac8d47d680688f5588e72f6d_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="idd01b47b6fb940249153611f99e66f25_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:AssetImpairmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i1305ecc937334757bb12a8cba7a3f54d_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:AssetImpairmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i2037d5f81ade4e5cb94be5660abb7cf7_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:AssetImpairmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i5ca7c5cc3d4145dc9b6627d96117df31_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:LeaseLossReservesAndContractTerminationCostsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ideeba4f7855345dc925838e41a26f62e_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:LeaseLossReservesAndContractTerminationCostsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i04f74721ef664a15ae0c152e1d7a7903_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:LeaseLossReservesAndContractTerminationCostsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i378afa4992c74a2a8ed20ad739716b6d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i932f6b9ccc424cb2b8b851d28ebcaf09_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2018Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i3514341fa75b460ca28ba9831c6e5b7d_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i1807f587adf64eacad2661c08fce2cb4_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:AssetImpairmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i3a7cf8004b6b42baa570d9cc4b95dd11_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:ContractTerminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="ic2557eb57d8c40eaa16b68b4b3ff4caf_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i21a2ecfef3914775b73c926e6ff06139_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i6f9b770a459141ce8e36b45896ac3e73_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:AssetImpairmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i563b1b80941944fe983f35feab9f8fea_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:ContractTerminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i0f97419519cb465ab331bf6361ab326c_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i8f06c90fa5fe4dfeb43fd4fea867e82f_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i04d1b4fab8b94beab1ea80bef0722dfe_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">enph:AssetImpairmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i0a09f6163fd342bd99a1ea39bf7455a3_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:ContractTerminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i149cae1857cf4540a4ea545d3a449d78_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">enph:RestructuringPlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="iaa6116257b0045cd9280d0e9aaba5347_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="iee5898a8dd3446438d0ea6ac24c4245b_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i191fe245b1ff419b9f192629381df827_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i2bdd73feccad46d39db6c078a41d1a07_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i185a458a13d94cebb99034a7925ff44b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i3c0f58cfba6740968643ad75296c98d6_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i21cf380863fc4214a1f8c9f1eaa2da60_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:FinancingReceivableRecordedAsDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:FinanceReceivablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i4c912e4b02d44a19991d27be53c4b950_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:FinancingReceivableRecordedAsDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:FinanceReceivablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i56f0868e4c8746f0beb36d7610c35a72_D20200309-20200309">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-03-09</startDate>
            <endDate>2020-03-09</endDate>
        </period>
    </context>
    <context id="i7d33429eb81e410a99a7e754af11a2be_D20200309-20200309">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-03-09</startDate>
            <endDate>2020-03-09</endDate>
        </period>
    </context>
    <context id="if44affea699b4b1fa158cb135be043e5_D20200309-20200309">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-03-09</startDate>
            <endDate>2020-03-09</endDate>
        </period>
    </context>
    <context id="icc6268b29b004e15bcf26a2ac3c33eae_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i5d2df4715c964c839ebbed49d6ff0e76_I20200519">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <instant>2020-05-19</instant>
        </period>
    </context>
    <context id="i2048b952882346aea297b3bfbfa8fd4e_D20200310-20200520">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2020-03-10</startDate>
            <endDate>2020-05-20</endDate>
        </period>
    </context>
    <context id="icc74bf69f84e4376a26f3240a7d7c556_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i63b16db3981a4dad8759c8f0c01f1009_D20200310-20200520">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-03-10</startDate>
            <endDate>2020-05-20</endDate>
        </period>
    </context>
    <context id="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-06-05</instant>
        </period>
    </context>
    <context id="ibead413bd8f64eae80dc65cf6dc2c392_D20190605-20190605">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-06-05</startDate>
            <endDate>2019-06-05</endDate>
        </period>
    </context>
    <context id="i85e5083a625943bcb18baa053a35dc99_D20190605-20190605">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-06-05</startDate>
            <endDate>2019-06-05</endDate>
        </period>
    </context>
    <context id="ief98d4c7476147e0af0bc92b61c93d7d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i19be17f1005a411696f1e9f81ec047da_D20200309-20200309">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-03-09</startDate>
            <endDate>2020-03-09</endDate>
        </period>
    </context>
    <context id="i3bd4301c8403411aa8f4af2e63912de9_D20190605-20190605">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-06-05</startDate>
            <endDate>2019-06-05</endDate>
        </period>
    </context>
    <context id="id68f52e6ad0c462ab8557be0a6e6e64b_D20210101-20210212">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-02-12</endDate>
        </period>
    </context>
    <context id="ideb40a446de648b381aab34d0a210a06_I20190605">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputDiscountRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-06-05</instant>
        </period>
    </context>
    <context id="ic23299c12aec463a881020a65b48bdf9_D20201001-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-10-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i58b1608942844604a93ab9ac9745f646_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputDiscountRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ic790a4f7d50e4453953b02b3d22e3304_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputExpectedTermMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2020-10-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic45a4981fa4b4635b9c8196a1077c18e_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i06d55e970b3143e8b47cef5cf183db0b_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ice23f43963d64f0ea963c1407aa780a1_D20190605-20190605">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2019-06-05</startDate>
            <endDate>2019-06-05</endDate>
        </period>
    </context>
    <context id="i469a49182d3c4744a7628ccfbad19593_I20180831">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-08-31</instant>
        </period>
    </context>
    <context id="i6d3d9446d7dc4af7991ba784812b748f_D20190605-20190605">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-06-05</startDate>
            <endDate>2019-06-05</endDate>
        </period>
    </context>
    <context id="i00095223617d49de99811648271fa106_D20190605-20190605">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-06-05</startDate>
            <endDate>2019-06-05</endDate>
        </period>
    </context>
    <context id="i9247387303894b238b5fdf7012992e42_D20180801-20180831">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-01</startDate>
            <endDate>2018-08-31</endDate>
        </period>
    </context>
    <context id="id5855f2bb3474f0f900f9e4bf6f7b386_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic6801e0858d04e94a69208a8fcf8d8ae_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i4c5113dbc392473fb1cfafa92282176b_D20171201-20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:FinancingReceivableRecordedAsDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:FinanceReceivablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="id813cd8ddfe34283bed2286570b72c34_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:FinancingReceivableRecordedAsDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:FinanceReceivablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i0f00b48f549542709bd818b24be5a422_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ic2f08648a1eb48ad97046496e9ea3f2f_I20200326">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GainContingenciesByNatureAxis">enph:Section301TariffRefundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-26</instant>
        </period>
    </context>
    <context id="i3697363b1e04408a8417facd7e19018e_I20200326">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GainContingenciesByNatureAxis">enph:Section301TariffRefundsAccruedInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-26</instant>
        </period>
    </context>
    <context id="i3e04ede40c974c2ca96c413815408e90_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GainContingenciesByNatureAxis">enph:Section301TariffRefundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2c27487fbc8945e7b32b5b2b8743b41b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GainContingenciesByNatureAxis">enph:Section301TariffRefundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="id150194c8f2341bcb6fe63c40caefbfb_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GainContingenciesByNatureAxis">enph:Section301TariffRefundsAccruedInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i3ab3d0a1f9ef4539bec077fb8bb60884_D20180201-20180228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2018-02-01</startDate>
            <endDate>2018-02-28</endDate>
        </period>
    </context>
    <context id="ie25c0d9d115d421bb34cc104c1e1fccc_I20180228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <instant>2018-02-28</instant>
        </period>
    </context>
    <context id="ie0d53de33c254bcf9936847cfbe36f06_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">enph:TwoThousandSixEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8e00d123ad7e4ae38496d42e2e9b688d_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">enph:TwoThousandSixEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i08b3a42a6d2e42df90a482f2e7950222_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">enph:TwoThousandandElevenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i90872b97c68345a7a731ed7a882dc816_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">enph:BeforeAugust12012Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">enph:TwoThousandandElevenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia7e2e9768e8e4f1ea8d787a340141acd_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">enph:AfterAugust12012Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">enph:TwoThousandandElevenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie4473c48845847a69bd0c5658aeea0f5_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">enph:TwoThousandandElevenEquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ifa5b4b4dcf0b485685de1e590a4bda3e_I20120329">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">enph:EmployeeStockPurchasePlanEsppMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2012-03-29</instant>
        </period>
    </context>
    <context id="if6862187987f4618b894a50ae30377ab_D20120329-20120329">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">enph:EmployeeStockPurchasePlanEsppMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2012-03-29</startDate>
            <endDate>2012-03-29</endDate>
        </period>
    </context>
    <context id="i112f95663a9346dc99e31f7aee7b4ecc_D20170518-20170518">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">enph:EmployeeStockPurchasePlanEsppMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-05-18</startDate>
            <endDate>2017-05-18</endDate>
        </period>
    </context>
    <context id="ia0d6acc0230d4f6c86dae813b8d7dca0_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">enph:EmployeeStockPurchasePlanEsppMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i412350457f9f4580bf84f73751717aa3_D20210101-20210101">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">enph:EmployeeStockPurchasePlanEsppMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-01-01</endDate>
        </period>
    </context>
    <context id="i96ab66ca4bbb4bba8092575c0b305399_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">enph:EmployeeStockPurchasePlanEsppMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8e15eea4fe344490ab3274493150beed_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <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="i83e4fe42f2ee48f9a9e9f061524506a0_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <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="i3c6558ac3b6a4e40a55d43c8fc3a1235_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i0bf8e97619f941b69faeae011661cac4_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i1eee491d9f9741d0b1a90d8f7c5480c0_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ib8fe9cfce28b440da3977d2bdb38c882_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i013a8098ef2d415eb2daab51a0512783_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <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="i2eff03af1d4d42ad90740890ab0cb6bd_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <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="i0d6288fa11bb4a1480f7d57b9d7ae012_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="ib182d4367f554601afa6afaf93b6ec96_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i6849c345b4e24236b75b2a90113ecc9c_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i18dfa5446128428e8a763b17d8360c0c_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i1609a775e8c84a108691acad3e2f153c_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <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="i825d43b6eaf247e7ac0b65a5d4e3a88f_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <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="ib550d78d59004cbfb4ea5916d5051e16_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="ic6d60aeffbc74041854c6cc3064c16c6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:RestructuringChargesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ib032172376984e3985d7705ddd213e7d_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:RestructuringChargesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i5f773c24754f4da3b0c384c526d2c369_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:RestructuringChargesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i1a203c99c5d442faac03197fa15c46a6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">enph:EmployeeStockOptionsAndRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ice1a25c310014c458469219a77cd6bdf_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">enph:EmployeeStockOptionsAndRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i1c6eeab6665b48428eeca75cc47a7618_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">enph:EmployeeStockOptionsAndRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="id2cd5455258944ada362e2c03763d7b7_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i139658f27e7b4443b98c44f5b0276783_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i5b1f5df70b3340e6991b2eaad699319b_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i2ad2654cbed74bcab65bd3f15d5faa60_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">enph:RangeOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="if782fe0b208d4388a09a184362c97c18_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">enph:RangeOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i90ab4e3e0ce74eb2997b5128a0ce0824_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">enph:RangeTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i507c0c076e4f467cbed0262ea4500251_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">enph:RangeTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i2d826e9b45a94a0f81d9215b9be6551a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">enph:RangeThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i6f7e09c1200c4b229b337b0f01e54fce_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">enph:RangeThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i5f5afde323984330adc6125967c6bfce_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">enph:RangeFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i7cb5ca22a93d4f49ba6eb7a76e3ef04b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">enph:RangeFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i973a1080ec1542e78a3b7f1c678a8175_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">enph:RangeFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ica464b05467142098eaf65b81ef11620_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">enph:RangeFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i8e4f26f8ac7b4fa3b89f0603039da0aa_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i7afbd2e29f1f4a019ecc1e3dec86344b_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i18d016f14e1d488ab7e318c885db725d_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i801bfc89358142848e59c2cf9ef90d99_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i3ca21c549b99429cbfbecadc2a8cc6a4_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ie37269a496304be4911811b16dc961c6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i826472de5149465e9dac9bf5bbdb1331_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i654d06914e054f708aa03d18d4205d83_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i45e1e2d3660e497e8db402574b6274e6_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i286600ae0cdb4008802f310937847260_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i67bb7fd7df8b43eead474aa4846df12e_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="id882c3604a314baaaf046d62879b7347_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ifc92fc4a72854531bd37f627e79c8a9f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i8271d0dcbfdb4fbba891810a09809cf5_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i437068545ff0470995a3718422263854_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="ib43daa11df9f418994c90f199bb3a348_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</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="i040dc4990d4e4015acccf0d08529037f_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:ResearchMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i6df6ae3aa56c4c3ab56d7e68f1095d61_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:ResearchMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ibdd59d365a7541018545016fb66e98c4_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">enph:AccountsReceivableLargestCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CreditConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia2221582b85d426da1d4d1ba0d12b6b9_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">enph:AccountsReceivableLargestCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CreditConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ic16a1d84dd0647ee99f4ffba1bea56a3_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">enph:AccountsReceivableSecondLargestCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CreditConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i4a3ac4ad633841319830a84a406f5c49_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">enph:AccountsReceivableThirdLargestCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CreditConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ie221d5843c95488b8c86ba42cdda1bf2_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">enph:NetRevenuesLargestCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">enph:NetRevenueMember</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="i28dfcf6660b6402cad55210ca2580b60_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">enph:NetRevenuesLargestCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">enph:NetRevenueMember</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="i7183ec5f3e8b4c3f83d7d4261d92225b_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">enph:NetRevenueSecondLargestCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">enph:NetRevenueMember</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="i5195c007a39f4d9d8fab31855b4e0f37_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">enph:NetRevenuesLargestCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i1f20972b53464d9aa444e30092919b85_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="ic723d69108de438799f357cc6dadebce_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="if0fa606dc8e94a0a880d8dbc93d661b7_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i50036f316c7b4b748bdf5844016588a4_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ibd714ff6a5ea43528ba42e579f509a15_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="id45a1489344b4570ba4d23f02db4c12d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">enph:RSUsAndPSUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i3198bb2200894b04b5d3d8a5dbc09ecf_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">enph:RSUsAndPSUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ie5486b912e5d4c8a9faa3ee1841bba3f_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">enph:RSUsAndPSUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i1f95af5c5ed34cf8980d537dd6bddebd_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i89402c690c2148fba9fdd7d5797e1fff_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i6c88d341d9ba491f8aa0eac06a3c9fdc_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNoteDue2024Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i26215d0ec16847f3bc371ea61cece29d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iacdaa75a666d48ae850df088d9866f11_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i9d62d60a59cb4a729dad45c52d1839c2_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i0534278fed064070bedb4be765002104_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0c62bb842c234ed6a09250121aa8f1b7_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i5b4d899181d040708f2ede6f0addb810_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2025Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i7fe49d0789e34fd8bef466b95fd8fceb_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i045d08e1a9184a5b8008fa13b5569b86_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="icd7065478925411fbf86cbb7daf11a0b_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="i9ddcf816af274acf92e17e3edd959047_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i0c1988b971f54c8ba4bd4a70602357a3_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i63529bdaf60547819bf7018011d9c392_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i5a06b0a9abb54dd7ac9515bd11e7d7f7_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i08238168f508485e8f19558aa5cfba6f_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:MX</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i9017543b50444b25b9f221872371cc0f_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:MX</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i4bbb38f702db42139f0c2308d65a4578_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ib25d48073d884af7b17556d5c31ca3bb_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ib440788309334f34ac5de2ab75e123a0_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NZ</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i788450a844b0495a8de0b0ec8ecf9635_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NZ</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i93a5784ffdd54b49b8d079e07b41f192_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">enph:OtherCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i9c7e38efd86e445895ee210d4723863d_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">enph:OtherCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i465f43bf50354e1c8924232ffd004d0c_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">enph:ThurmanJohnRodgersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="i6121ef473e0b4f2cbedaadc6d78b6194_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">enph:ThurmanJohnRodgersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i7fb5441fa44648ea86deb663383d1f10_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">enph:ThurmanJohnRodgersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">enph:ConvertibleSeniorNotesDue2023Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleNotesPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ic500f82b014a42d2b48875928ab14abd_D20190101-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">enph:SunPowersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ic336ad510bf146e0b07ba538d4c58c57_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">enph:SunPowersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i9cbd9e085cbd4eb586381dded472c100_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">enph:SunPowersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i158fc863f2ee4d6e9b1e704a4bb80a2d_I20180809">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SunPowersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputDiscountRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-08-09</instant>
        </period>
    </context>
    <context id="id2b72c181e674b4e9b667c499c820e20_I20180809">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SunPowersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputDiscountRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-08-09</instant>
        </period>
    </context>
    <context id="i5a269fd220b24416b55bb41a0245f406_I20180809">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SunPowersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-08-09</instant>
        </period>
    </context>
    <context id="id52fb79c814c410b8330ff9938e82a64_I20180809">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SunPowersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-08-09</instant>
        </period>
    </context>
    <context id="iff42999a6b014aa2a5c419c1517bd59a_I20180809">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SunPowersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-08-09</instant>
        </period>
    </context>
    <context id="ib28d8331c0f041cabfd9c8600a33d5c2_D20180809-20180809">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">enph:DevelopedTechnologyAndGoodwillMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-09</startDate>
            <endDate>2018-08-09</endDate>
        </period>
    </context>
    <context id="i8717b2b5f19440a98d59399e484e9293_D20180809-20180809">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-09</startDate>
            <endDate>2018-08-09</endDate>
        </period>
    </context>
    <context id="i2dcd7178059641fcaeb27736adaa5e77_D20180809-20180809">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2018-08-09</startDate>
            <endDate>2018-08-09</endDate>
        </period>
    </context>
    <context id="i4305099f1146489f8f871df7f116904d_D20180101-20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SunPowersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="ib09b6c425b104055909d81ec2a3fc81e_I20181231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SunPowersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="ibaea5bb541d14846a35b042b80297ec9_D20210101-20210131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="i4a05b041b02540218be40a917bd90d1c_I20210125">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SofdeskIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-25</instant>
        </period>
    </context>
    <context id="ieba15b086a9f409f9ed2e792b4ef60e1_D20210125-20210125">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">enph:SofdeskIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-25</startDate>
            <endDate>2021-01-25</endDate>
        </period>
    </context>
    <context id="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-06-30</endDate>
        </period>
    </context>
    <context id="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2019-04-01</startDate>
            <endDate>2019-06-30</endDate>
        </period>
    </context>
    <context id="i162f174c04ce41a7bab3019c30001087_D20190701-20190930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001463101</identifier>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2019-12-31</endDate>
        </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="trading_day">
        <measure>enph:trading_day</measure>
    </unit>
    <unit id="purchaseperiod">
        <measure>enph:purchasePeriod</measure>
    </unit>
    <unit id="segment">
        <measure>enph:segment</measure>
    </unit>
    <dei:EntityCentralIndexKey
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83L2ZyYWc6OGIyYTMyYjYxNmRmNDRjM2E1ZGY2Nzk2YzQ5YTMzOTIvdGFibGU6NGFjZjZjZDdlNmE1NDRiYmE3ZTM1YjUxZDNkZTc3NDMvdGFibGVyYW5nZTo0YWNmNmNkN2U2YTU0NGJiYTdlMzViNTFkM2RlNzc0M182LTEtMS0xLTA_09791da5-de66-4765-8b9a-ac6664cf364a">0001463101</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83L2ZyYWc6OGIyYTMyYjYxNmRmNDRjM2E1ZGY2Nzk2YzQ5YTMzOTIvdGFibGU6NGFjZjZjZDdlNmE1NDRiYmE3ZTM1YjUxZDNkZTc3NDMvdGFibGVyYW5nZTo0YWNmNmNkN2U2YTU0NGJiYTdlMzViNTFkM2RlNzc0M185LTEtMS0xLTA_48090cf6-56eb-42d6-b099-a63de515d430">false</dei:AmendmentFlag>
    <dei:DocumentFiscalYearFocus
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83L2ZyYWc6OGIyYTMyYjYxNmRmNDRjM2E1ZGY2Nzk2YzQ5YTMzOTIvdGFibGU6NGFjZjZjZDdlNmE1NDRiYmE3ZTM1YjUxZDNkZTc3NDMvdGFibGVyYW5nZTo0YWNmNmNkN2U2YTU0NGJiYTdlMzViNTFkM2RlNzc0M18xMC0xLTEtMS0w_ac18089e-803f-4f37-b5e6-096f564c1fe7">2020</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83L2ZyYWc6OGIyYTMyYjYxNmRmNDRjM2E1ZGY2Nzk2YzQ5YTMzOTIvdGFibGU6NGFjZjZjZDdlNmE1NDRiYmE3ZTM1YjUxZDNkZTc3NDMvdGFibGVyYW5nZTo0YWNmNmNkN2U2YTU0NGJiYTdlMzViNTFkM2RlNzc0M18xMS0xLTEtMS0w_a76be4f8-b2b4-4df4-a319-508d1391493b">FY</dei:DocumentFiscalPeriodFocus>
    <us-gaap:AccountingStandardsUpdateExtensibleList
      contextRef="i1da68dc2983d4534845ece1dc6599aac_D20170101-20171231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTAtMC0xLTEtNzM1Mw_2c80e255-9fb7-40ef-9a19-7a76e00e7718">us-gaap:AccountingStandardsUpdate201409Member</us-gaap:AccountingStandardsUpdateExtensibleList>
    <us-gaap:AccountingStandardsUpdateExtensibleList
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjAtMC0xLTEtMA_dd2e558e-eaa4-437a-9010-a93c4b312446">us-gaap:AccountingStandardsUpdate201807Member</us-gaap:AccountingStandardsUpdateExtensibleList>
    <enph:ProductWarrantyEstimatedFailureRatePeriodBetweenProductSaleandStartofMonitoring
      contextRef="ib946ee6ab2bf476f862498fcc7c97f9c_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTU0MzI_d4d9ab4a-ef9a-4f84-936b-40ee9c2867e7">P3M</enph:ProductWarrantyEstimatedFailureRatePeriodBetweenProductSaleandStartofMonitoring>
    <enph:ProductWarrantyEstimatedFailureRatePeriodBetweenProductSaleandStartofMonitoring
      contextRef="ib946ee6ab2bf476f862498fcc7c97f9c_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTU1OTY_d4d9ab4a-ef9a-4f84-936b-40ee9c2867e7">P3M</enph:ProductWarrantyEstimatedFailureRatePeriodBetweenProductSaleandStartofMonitoring>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i5c76a5f2b43146a1a475eebc6f528ae5_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl85MS9mcmFnOmQ1NzczOGVjNWU1MTQ4NWI4MGQ3ZmY2MGZkNGRiYThlL3RhYmxlOjBjYjc2MzA2Y2Q3MjRlZWNhNTY0MTFhNWQwYTljMDEyL3RhYmxlcmFuZ2U6MGNiNzYzMDZjZDcyNGVlY2E1NjQxMWE1ZDBhOWMwMTJfMS0xLTEtMS0w_c36efb9d-11b3-4a6c-a503-cf7e05653f1e">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i4cfb83d6548246bd8d8b9d7bdddb7e51_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl85MS9mcmFnOmQ1NzczOGVjNWU1MTQ4NWI4MGQ3ZmY2MGZkNGRiYThlL3RhYmxlOjBjYjc2MzA2Y2Q3MjRlZWNhNTY0MTFhNWQwYTljMDEyL3RhYmxlcmFuZ2U6MGNiNzYzMDZjZDcyNGVlY2E1NjQxMWE1ZDBhOWMwMTJfMi0xLTEtMS0w_ffac6be0-c886-4ae1-abec-ea3f3507927b">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i550c1567ada549168286619637ba196a_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl85MS9mcmFnOmQ1NzczOGVjNWU1MTQ4NWI4MGQ3ZmY2MGZkNGRiYThlL3RhYmxlOjBjYjc2MzA2Y2Q3MjRlZWNhNTY0MTFhNWQwYTljMDEyL3RhYmxlcmFuZ2U6MGNiNzYzMDZjZDcyNGVlY2E1NjQxMWE1ZDBhOWMwMTJfMy0xLTEtMS0w_df34024a-bdbf-420e-819f-0d2130e3edf6">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i73e66a0daea2469da3afaf3dc0b30d35_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl85MS9mcmFnOmQ1NzczOGVjNWU1MTQ4NWI4MGQ3ZmY2MGZkNGRiYThlL3RhYmxlOjBjYjc2MzA2Y2Q3MjRlZWNhNTY0MTFhNWQwYTljMDEyL3RhYmxlcmFuZ2U6MGNiNzYzMDZjZDcyNGVlY2E1NjQxMWE1ZDBhOWMwMTJfNC0xLTEtMS0w_2c7a41cb-547b-4728-a5fa-cebc56bcdae3">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i5a769a3bce8b4532aa1f8d19c57035c1_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl85MS9mcmFnOmQ1NzczOGVjNWU1MTQ4NWI4MGQ3ZmY2MGZkNGRiYThlL3RhYmxlOjBjYjc2MzA2Y2Q3MjRlZWNhNTY0MTFhNWQwYTljMDEyL3RhYmxlcmFuZ2U6MGNiNzYzMDZjZDcyNGVlY2E1NjQxMWE1ZDBhOWMwMTJfNS0xLTEtMS0w_7fd7dc01-93e9-49c2-a45c-cca5e283a5d9">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i4b63722f0ce048a8b4f7bdb9b2fd11b5_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl85MS9mcmFnOmQ1NzczOGVjNWU1MTQ4NWI4MGQ3ZmY2MGZkNGRiYThlL3RhYmxlOjBjYjc2MzA2Y2Q3MjRlZWNhNTY0MTFhNWQwYTljMDEyL3RhYmxlcmFuZ2U6MGNiNzYzMDZjZDcyNGVlY2E1NjQxMWE1ZDBhOWMwMTJfNi0xLTEtMS0w_fcfb0374-cc86-4415-a9ff-731f66e3bc94"
      xsi:nil="true"/>
    <us-gaap:DebtInstrumentConvertibleConversionRatio1
      contextRef="i56f0868e4c8746f0beb36d7610c35a72_D20200309-20200309"
      decimals="7"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTAvZnJhZzo4ZTBhODgwMDUzOTA0MjRlODcwMWQ1MzA2NDUyNTBlNS90YWJsZToxZmM4ZjdjMGMxMGY0MmEyYTRkMmQ4MTk3ZDM3N2IxMS90YWJsZXJhbmdlOjFmYzhmN2MwYzEwZjQyYTJhNGQyZDgxOTdkMzc3YjExXzEtMS0xLTEtMA_29d0b170-7c06-4c78-8f83-ea86679961c1"
      unitRef="number">0.0122637</us-gaap:DebtInstrumentConvertibleConversionRatio1>
    <us-gaap:DebtInstrumentConvertibleConversionRatio1
      contextRef="ibead413bd8f64eae80dc65cf6dc2c392_D20190605-20190605"
      decimals="7"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTAvZnJhZzo4ZTBhODgwMDUzOTA0MjRlODcwMWQ1MzA2NDUyNTBlNS90YWJsZToxZmM4ZjdjMGMxMGY0MmEyYTRkMmQ4MTk3ZDM3N2IxMS90YWJsZXJhbmdlOjFmYzhmN2MwYzEwZjQyYTJhNGQyZDgxOTdkMzc3YjExXzMtMS0xLTEtMA_21fc2f40-5142-4533-96f3-dc13d22e76db"
      unitRef="number">0.0487781</us-gaap:DebtInstrumentConvertibleConversionRatio1>
    <us-gaap:DebtInstrumentConvertibleConversionRatio1
      contextRef="i9247387303894b238b5fdf7012992e42_D20180801-20180831"
      decimals="7"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTAvZnJhZzo4ZTBhODgwMDUzOTA0MjRlODcwMWQ1MzA2NDUyNTBlNS90YWJsZToxZmM4ZjdjMGMxMGY0MmEyYTRkMmQ4MTk3ZDM3N2IxMS90YWJsZXJhbmdlOjFmYzhmN2MwYzEwZjQyYTJhNGQyZDgxOTdkMzc3YjExXzUtMS0xLTEtMA_253ae4c6-3f24-4f24-8bcd-8e6b567ba2be"
      unitRef="number">0.1800180</us-gaap:DebtInstrumentConvertibleConversionRatio1>
    <us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzMtMC0xLTEtMA_766bb3d6-016b-4778-93f1-6a567ab29df4">us-gaap:OtherLiabilitiesNoncurrent</us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzMtMC0xLTEtMA_9eb08d1c-9150-4bae-bafc-7f161223387f">us-gaap:OtherLiabilitiesNoncurrent</us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NDc0L2ZyYWc6ZGE3ODJlZmUyYWMyNGY2YmIyOTUwMDFiNDVmZmEwYzAvdGV4dHJlZ2lvbjpkYTc4MmVmZTJhYzI0ZjZiYjI5NTAwMWI0NWZmYTBjMF80OTQ3ODAyMzI2NzUz_c203d676-0303-44e1-9326-a75d625f4e4a">us-gaap:AccruedLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NDc0L2ZyYWc6ZGE3ODJlZmUyYWMyNGY2YmIyOTUwMDFiNDVmZmEwYzAvdGV4dHJlZ2lvbjpkYTc4MmVmZTJhYzI0ZjZiYjI5NTAwMWI0NWZmYTBjMF80OTQ3ODAyMzI2NzUz_fccb9ea3-be3a-40a8-a122-92a9a384b9c6">us-gaap:AccruedLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:NumberOfReportableSegments
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODYvZnJhZzplZWI1MmIzNzIzZmY0MmZkYjNiZDA3NWFmYjJjYTc1ZC90ZXh0cmVnaW9uOmVlYjUyYjM3MjNmZjQyZmRiM2JkMDc1YWZiMmNhNzVkXzEwOQ_025c7d19-0858-4102-87dc-69fc9ed0f41a"
      unitRef="segment">1</us-gaap:NumberOfReportableSegments>
    <us-gaap:NumberOfOperatingSegments
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODYvZnJhZzplZWI1MmIzNzIzZmY0MmZkYjNiZDA3NWFmYjJjYTc1ZC90ZXh0cmVnaW9uOmVlYjUyYjM3MjNmZjQyZmRiM2JkMDc1YWZiMmNhNzVkXzExMg_90fc2bb6-73d5-42a4-9b6c-dedefa74ae0f"
      unitRef="segment">1</us-gaap:NumberOfOperatingSegments>
    <dei:DocumentType
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzEyMg_5d905556-111e-4924-b80c-60e0e6932e55">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzEyNQ_9f860a7a-521e-477a-b035-3bc07037c313">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMjIw_4c5a8ace-6672-4f07-8551-3c3c8057ad76">2020-12-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMjIw_8020f56f-e36e-41ad-98c1-902facba68fb">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentTransitionReport
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzEyMw_d1d5b939-9402-4262-91cc-528603aee107">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzExNg_dfc7f778-82a9-4e78-abfe-1109f96458f6">001-35480</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzEzMQ_efa90915-6751-4a3d-8c1d-934d051313db">Enphase Energy, Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RhYmxlOjc1YTc5OWY2YzgyYjRkY2M4ZTIzNzQyOTAxY2UzZGZlL3RhYmxlcmFuZ2U6NzVhNzk5ZjZjODJiNGRjYzhlMjM3NDI5MDFjZTNkZmVfMC0wLTEtMS02ODM1_8af2482f-d702-4afc-b097-c91c237bfa01">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RhYmxlOjc1YTc5OWY2YzgyYjRkY2M4ZTIzNzQyOTAxY2UzZGZlL3RhYmxlcmFuZ2U6NzVhNzk5ZjZjODJiNGRjYzhlMjM3NDI5MDFjZTNkZmVfMC0xLTEtMS02ODM5_0904baa0-4d0c-4adf-b962-2ebadf390e4b">20-4645388</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzExNw_2cb1e31c-a0cd-41e7-ba1f-39dd032ee211">47281 Bayside Parkway</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzExNA_72775e73-a336-424a-ae82-09c43bb51c7d">Fremont</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfNzY5NjU4MTM5NzYxNA_732062e0-757e-42d8-ab19-63257bd41bbc">CA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzExOQ_7b7be61f-3486-48b1-90ac-9bbf1f41c378">94538</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzEyNg_37438a32-2797-4be5-9df9-0c7d421bf656">877</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzEzMg_a6699a51-d1b2-4687-a626-941563daa01a">774-7000</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RhYmxlOjRkZjQ4ODdiN2I4NDQ3ZmY4ZDA3MTE1YjY5NGY1ODNkL3RhYmxlcmFuZ2U6NGRmNDg4N2I3Yjg0NDdmZjhkMDcxMTViNjk0ZjU4M2RfMS0wLTEtMS0w_e73e707c-54b1-42cb-9e25-3df60f420ae7">Common Stock, $0.00001 par value per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RhYmxlOjRkZjQ4ODdiN2I4NDQ3ZmY4ZDA3MTE1YjY5NGY1ODNkL3RhYmxlcmFuZ2U6NGRmNDg4N2I3Yjg0NDdmZjhkMDcxMTViNjk0ZjU4M2RfMS0xLTEtMS0w_4e7d2612-d065-4e85-9ae8-1cb08f1832c5">ENPH</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RhYmxlOjRkZjQ4ODdiN2I4NDQ3ZmY4ZDA3MTE1YjY5NGY1ODNkL3RhYmxlcmFuZ2U6NGRmNDg4N2I3Yjg0NDdmZjhkMDcxMTViNjk0ZjU4M2RfMS0yLTEtMS02ODUz_37191d13-7fb9-4908-bf50-ec3e6d018312">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzExNQ_2f4e05f3-5b89-46b0-90a2-2ec743ba9d68">Yes</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzExMw_9adf4de0-c238-45ad-9bed-b30a1b88b563">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfNDk0NzgwMjMyODE1OQ_461c3a24-0518-4d92-9590-8e3b78499ece">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzEyNA_17619de7-54ce-4684-ad6f-1c4d24733af1">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RhYmxlOjhhNWJjNjJkODk2NjQ5ZDVhZDQ4M2M5YWEyNjUzMDc5L3RhYmxlcmFuZ2U6OGE1YmM2MmQ4OTY2NDlkNWFkNDgzYzlhYTI2NTMwNzlfMC0wLTEtMS02ODY1_280ce6cf-eaf4-487e-b4eb-4544b96b3b8b">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RhYmxlOjhhNWJjNjJkODk2NjQ5ZDVhZDQ4M2M5YWEyNjUzMDc5L3RhYmxlcmFuZ2U6OGE1YmM2MmQ4OTY2NDlkNWFkNDgzYzlhYTI2NTMwNzlfMS0zLTEtMS02ODY5_361e0684-f995-4422-b5cd-33c86e802cc5">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RhYmxlOjhhNWJjNjJkODk2NjQ5ZDVhZDQ4M2M5YWEyNjUzMDc5L3RhYmxlcmFuZ2U6OGE1YmM2MmQ4OTY2NDlkNWFkNDgzYzlhYTI2NTMwNzlfMi0zLTEtMS02ODY2_652cc779-c9fb-41d3-ba50-5bf57ea7a4c6">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfNDk0NzgwMjMyODk4Mg_ea27b0b3-2900-406a-9104-337dc5fb1eb3">true</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMzEyMQ_7579ce69-6600-458d-83b4-1a9ba0b547b3">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="iaa9afa44e8ea442b83fdf19c106d4cc9_I20200630"
      decimals="-8"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMjY5OA_012f95e2-be81-47a7-85d8-96906f2418e7"
      unitRef="usd">4000000000.0</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i6380541d96174560a309beb973a7a048_I20210208"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfMjcyMw_b55830a3-1274-4a8e-9274-a7d6f51fe271"
      unitRef="shares">129021311</dei:EntityCommonStockSharesOutstanding>
    <dei:DocumentsIncorporatedByReferenceTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMC9mcmFnOjE0YmY0NDE0M2JmNjRkMDlhZTIwNDhhMzFhZmVjMThmL3RleHRyZWdpb246MTRiZjQ0MTQzYmY2NGQwOWFlMjA0OGEzMWFmZWMxOGZfNDk0NzgwMjMyODE2MQ_eaca8689-1370-47d6-95d7-518ff1eae4d9">Portions of the registrant&#x2019;s Proxy Statement for the 2021 Annual Meeting of Stockholders to be filed with the Securities and Exchange Commission within 120 days after the end of the registrant&#x2019;s fiscal year ended December&#160;31, 2020 are incorporated by reference into Part III of this Annual Report on Form 10-K</dei:DocumentsIncorporatedByReferenceTextBlock>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNC0xLTEtMS0w_0eb4bb43-6a6e-4388-96c1-f2c6ee8fc855"
      unitRef="usd">679379000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNC0zLTEtMS0w_655c3bd7-5fbb-43aa-9089-ce4937082040"
      unitRef="usd">251409000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCash
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNS0xLTEtMS0w_b7fd8b43-4539-4741-ba70-f32df796b337"
      unitRef="usd">0</us-gaap:RestrictedCash>
    <us-gaap:RestrictedCash
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNS0zLTEtMS0w_f25a1d3b-05ff-4361-8bc2-d4a64c9ae540"
      unitRef="usd">44700000</us-gaap:RestrictedCash>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNi0wLTEtMS0wL3RleHRyZWdpb246ODJhMGQzMTc4MjczNDdlZjliOGNjN2QyOWZlNzM1NGJfNDk0NzgwMjMyNTEwOA_67499916-ddb5-4083-8c20-fad91e645072"
      unitRef="usd">462000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNi0wLTEtMS0wL3RleHRyZWdpb246ODJhMGQzMTc4MjczNDdlZjliOGNjN2QyOWZlNzM1NGJfNDk0NzgwMjMyNTExNQ_a1130f2f-e69a-47d2-b283-6a72ee5c5e75"
      unitRef="usd">564000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNi0xLTEtMS0w_6f7aca2b-46c0-49b6-bf62-8206a5732397"
      unitRef="usd">182165000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNi0zLTEtMS0w_449bb0e6-c776-455b-9cd5-e62dbf9626f5"
      unitRef="usd">145413000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNy0xLTEtMS0w_92a63c38-f3e6-41f2-9f04-0701bc12de75"
      unitRef="usd">41764000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNy0zLTEtMS0w_4be90ca1-0f5c-4c7c-a315-d580577120d7"
      unitRef="usd">32056000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfOC0xLTEtMS0w_2d89a22a-2a52-4c7c-9d38-91d6916520a8"
      unitRef="usd">29756000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfOC0zLTEtMS0w_dcd470ce-cb15-4625-982b-e82fc49b27e2"
      unitRef="usd">26079000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfOS0xLTEtMS0w_36d03316-27c5-46ca-9ea1-6bf9f9bcbb72"
      unitRef="usd">933064000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfOS0zLTEtMS0w_f8d379dc-f3b8-4bfa-8064-74b44622ac9b"
      unitRef="usd">499657000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTAtMS0xLTEtMA_07b2d695-1ead-4e21-86d2-b07983a5d428"
      unitRef="usd">42985000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTAtMy0xLTEtMA_7f6d800c-6f51-4eb0-86b8-ba94fed7ad73"
      unitRef="usd">28936000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTEtMS0xLTEtMA_748be3d1-f7aa-4ae3-827f-744feebc5d51"
      unitRef="usd">17683000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTEtMy0xLTEtMA_cad12554-15d2-47ef-a613-898bec1c8901"
      unitRef="usd">10117000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTItMS0xLTEtMA_35f47d25-431b-482a-b8b9-2565d124261e"
      unitRef="usd">28808000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTItMy0xLTEtMA_211f7b9c-9213-4c9e-b10a-651b7b453b10"
      unitRef="usd">30579000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:Goodwill
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTMtMS0xLTEtMA_578dd79b-e55c-4a33-9b97-eb51dc3db37f"
      unitRef="usd">24783000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTMtMy0xLTEtMA_78d0ac39-1f3d-4376-98ea-e30f99724d18"
      unitRef="usd">24783000</us-gaap:Goodwill>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTQtMS0xLTEtMA_a5dcf052-7097-469a-aa4d-b92c111165ee"
      unitRef="usd">59875000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTQtMy0xLTEtMA_b5ff1b0e-4988-4f71-9eb0-e6a627edb0c0"
      unitRef="usd">44620000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTUtMS0xLTEtMA_8d18d84f-b003-40d8-af62-5562c147e2ca"
      unitRef="usd">92904000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTUtMy0xLTEtMA_665779d0-d21c-497c-ae11-a399ffec0418"
      unitRef="usd">74531000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:Assets
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTctMS0xLTEtMA_2eb1cc2a-66e3-477d-a924-2132e42786d7"
      unitRef="usd">1200102000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMTctMy0xLTEtMA_5315d43e-37e9-4c19-b865-ddae71e2eda2"
      unitRef="usd">713223000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjAtMS0xLTEtMA_da2bc35f-4746-4633-b902-84fa675bf079"
      unitRef="usd">72609000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjAtMy0xLTEtMA_9823ba8b-1d58-4ffb-87c8-8b9a75f0a1a8"
      unitRef="usd">57474000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjEtMS0xLTEtMA_67f4a7d2-8cc1-4d2f-b173-3b81a91bc94c"
      unitRef="usd">76542000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjEtMy0xLTEtMA_a600c7c6-f4e4-4a2f-9bae-1e789d208b8a"
      unitRef="usd">47092000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjMtMS0xLTEtMA_0b6f2ff7-f0db-406e-af1b-7283f79f1dd8"
      unitRef="usd">47665000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjMtMy0xLTEtMA_8ddb6985-d285-435d-a97e-aa7c25b0f381"
      unitRef="usd">81783000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <enph:Enph_ProductWarrantyAccrualCurrentFairValueDisclosure
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjQtMC0xLTEtMC90ZXh0cmVnaW9uOjgxODc5NTg0YWFiMTQzODNhMmFkMzc0ZjdmYjZiOGY4XzQ5NDc4MDIzMjUxMzI_ef0c8705-cc28-4eca-9d4f-d6a41ae9581b"
      unitRef="usd">8267000</enph:Enph_ProductWarrantyAccrualCurrentFairValueDisclosure>
    <enph:Enph_ProductWarrantyAccrualCurrentFairValueDisclosure
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjQtMC0xLTEtMC90ZXh0cmVnaW9uOjgxODc5NTg0YWFiMTQzODNhMmFkMzc0ZjdmYjZiOGY4XzQ5NDc4MDIzMjUxNDE_114760cd-3513-4fdc-8cda-670814a52949"
      unitRef="usd">6794000</enph:Enph_ProductWarrantyAccrualCurrentFairValueDisclosure>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjQtMS0xLTEtMA_47647669-c29b-443f-9aba-e568a2702470"
      unitRef="usd">11260000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjQtMy0xLTEtMA_63afc3ec-c2df-48b6-94e4-86acc838b6a9"
      unitRef="usd">10078000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjYtMS0xLTEtMA_c93cbba9-b689-4bf6-ae6e-8507ba5d38d4"
      unitRef="usd">325967000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjYtMy0xLTEtMA_5251cc01-ed13-4b6b-b05b-53b418b5ec1c"
      unitRef="usd">2884000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjctMS0xLTEtMA_20d56809-75dc-4500-b8dd-6995bdbe4d94"
      unitRef="usd">534043000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMjctMy0xLTEtMA_de76a529-798d-42d2-8ab7-29bdf45df0aa"
      unitRef="usd">199311000</us-gaap:LiabilitiesCurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzAtMS0xLTEtMA_86ed1708-e315-42a9-9f8d-02ff14b476db"
      unitRef="usd">125473000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzAtMy0xLTEtMA_f1075980-95ae-4f43-9c3b-3d6270c841a2"
      unitRef="usd">100204000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <enph:Enph_ProductWarrantyAccrualNoncurrentFairValueDisclosure
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzEtMC0xLTEtMC90ZXh0cmVnaW9uOjRlMmJlMDBiMDI2ZDQ3MjU5MWVjZjI1ZmI1NDcyZmU5XzQ5NDc4MDIzMjUxMzY_435308cf-1714-432d-a011-3c7bf25afa87"
      unitRef="usd">20469000</enph:Enph_ProductWarrantyAccrualNoncurrentFairValueDisclosure>
    <enph:Enph_ProductWarrantyAccrualNoncurrentFairValueDisclosure
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzEtMC0xLTEtMC90ZXh0cmVnaW9uOjRlMmJlMDBiMDI2ZDQ3MjU5MWVjZjI1ZmI1NDcyZmU5XzQ5NDc4MDIzMjUxNDY_9e13f139-2bcb-42c7-8937-5b10f0b65807"
      unitRef="usd">13012000</enph:Enph_ProductWarrantyAccrualNoncurrentFairValueDisclosure>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzEtMS0xLTEtMA_6b5b3ba8-acf9-458c-bfa3-05015ca083be"
      unitRef="usd">34653000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzEtMy0xLTEtMA_23219caf-a8fe-4db2-bedb-219f5f5f5d06"
      unitRef="usd">27020000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzItMS0xLTEtMA_a40c3ca8-fea9-4fbf-87a3-626beb341d96"
      unitRef="usd">17042000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzItMy0xLTEtMA_ce45b2c8-44f4-431a-90bd-949a100ebfb7"
      unitRef="usd">11817000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzMtMS0xLTEtMA_7e9186b3-733d-4d72-bf06-eeda1d26d1a2"
      unitRef="usd">4898000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzMtMy0xLTEtMA_b2ff1960-20af-4a75-b359-345196c9167c"
      unitRef="usd">102659000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:Liabilities
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzUtMS0xLTEtMA_511b4472-4045-4195-b4c4-d4740d6cc7fc"
      unitRef="usd">716109000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzUtMy0xLTEtMA_b29c33d5-41f1-4927-9432-456ff1e98c84"
      unitRef="usd">441011000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzYtMS0xLTEtMA_e93f31ea-30c9-44bd-a302-41ee4f26a528"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfMzYtMy0xLTEtMA_d6a98f96-3799-49f6-a621-f5ba11a42a86"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDAtMC0xLTEtMC90ZXh0cmVnaW9uOjliNDMxMWYzZTZjZDQ0OGZiOWE3ZDk4MjIwODQ2MzYxXzQ5NDc4MDIzMjUyMDE_2987e3eb-c896-4bbb-aafd-b329b8074f95"
      unitRef="usdPerShare">0.00001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDAtMC0xLTEtMC90ZXh0cmVnaW9uOjliNDMxMWYzZTZjZDQ0OGZiOWE3ZDk4MjIwODQ2MzYxXzQ5NDc4MDIzMjUyMDE_87afc1c2-3abb-4479-8f2e-9516b6332620"
      unitRef="usdPerShare">0.00001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDAtMC0xLTEtMC90ZXh0cmVnaW9uOjliNDMxMWYzZTZjZDQ0OGZiOWE3ZDk4MjIwODQ2MzYxXzQ5NDc4MDIzMjUyMTE_cb80582c-ee52-413f-b33c-1c27d5847e5f"
      unitRef="shares">200000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDAtMC0xLTEtMC90ZXh0cmVnaW9uOjliNDMxMWYzZTZjZDQ0OGZiOWE3ZDk4MjIwODQ2MzYxXzQ5NDc4MDIzMjUyMjI_5ae0bbfc-5b91-434f-9915-5cf90a769dd6"
      unitRef="shares">150000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDAtMC0xLTEtMC90ZXh0cmVnaW9uOjliNDMxMWYzZTZjZDQ0OGZiOWE3ZDk4MjIwODQ2MzYxXzQ5NDc4MDIzMjUyMzM_1c7a7d7a-4c29-4d42-a475-cdee2e87c215"
      unitRef="shares">128962000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDAtMC0xLTEtMC90ZXh0cmVnaW9uOjliNDMxMWYzZTZjZDQ0OGZiOWE3ZDk4MjIwODQ2MzYxXzQ5NDc4MDIzMjUyMzM_75808654-7172-480e-9873-8b8d206a7f34"
      unitRef="shares">128962000</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDAtMC0xLTEtMC90ZXh0cmVnaW9uOjliNDMxMWYzZTZjZDQ0OGZiOWE3ZDk4MjIwODQ2MzYxXzQ5NDc4MDIzMjUyNDU_046b6589-9d10-4315-9478-e3efc1e15612"
      unitRef="shares">123109000</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDAtMC0xLTEtMC90ZXh0cmVnaW9uOjliNDMxMWYzZTZjZDQ0OGZiOWE3ZDk4MjIwODQ2MzYxXzQ5NDc4MDIzMjUyNDU_83d2f7e8-f707-4c15-8864-1462c69c21ca"
      unitRef="shares">123109000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDAtMS0xLTEtMA_318504fb-2df9-4ee9-99b2-20a9d52bded3"
      unitRef="usd">1000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDAtMy0xLTEtMA_6bf1067e-35a5-4e50-b830-c29f95acbb63"
      unitRef="usd">1000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDEtMS0xLTEtMA_677127fc-c73c-467f-b947-80b8d9d2058c"
      unitRef="usd">534744000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDEtMy0xLTEtMA_7f8cb42d-73ae-4c5a-9ffe-c5e7d1a30f24"
      unitRef="usd">458315000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDItMS0xLTEtMA_1ab1e596-f826-48f2-9d38-8f16bf781f5f"
      unitRef="usd">-51186000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDItMy0xLTEtMA_215c2623-6b5e-40d2-bd23-5499baf7e81d"
      unitRef="usd">-185181000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDMtMS0xLTEtMA_15f48576-cdfc-4665-b13f-a244c3bde077"
      unitRef="usd">434000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDMtMy0xLTEtMA_16acdda5-7953-44a3-83a2-b4c094b137a0"
      unitRef="usd">-923000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDQtMS0xLTEtMA_74e8fd90-5535-41de-b6d8-8709b68a66f7"
      unitRef="usd">483993000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDQtMy0xLTEtMA_9f61bcc5-0e2b-4f52-a178-b15054631892"
      unitRef="usd">272212000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDUtMS0xLTEtMA_719d87e1-7b80-4543-bd5d-70feec9038a1"
      unitRef="usd">1200102000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zNy9mcmFnOjRhNjdmN2IxMjQ1ZjQwZGQ5MzVhOTc1OGVjMWIwNjc1L3RhYmxlOmU4YzAyMDQxNDg5MjRkODc5NWI0MjM2NGFhMDE3M2JmL3RhYmxlcmFuZ2U6ZThjMDIwNDE0ODkyNGQ4Nzk1YjQyMzY0YWEwMTczYmZfNDUtMy0xLTEtMA_5d888c13-f599-474f-bf9b-5d472a82ac05"
      unitRef="usd">713223000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMi01LTEtMS0w_21d35a97-43fc-418b-a8de-f5201f83f872"
      unitRef="usd">774425000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMi03LTEtMS0w_23ce095f-93d7-42a8-a9e4-63871111f9bb"
      unitRef="usd">624333000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMi05LTEtMS0w_3e5cb53a-4886-4ea5-9f83-ef3ba9c5f7d5"
      unitRef="usd">316159000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfRevenue
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMy01LTEtMS0w_87c73700-9f9a-4720-aaab-f0ad5eeff9ee"
      unitRef="usd">428444000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMy03LTEtMS0w_f9665bc6-f6be-482f-b431-2724c304fae2"
      unitRef="usd">403088000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMy05LTEtMS0w_d1fa0982-3cf0-4718-9cea-5d9bc4a4742b"
      unitRef="usd">221714000</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfNC01LTEtMS0w_3b3323d2-bf02-4601-ae9a-9ce17cfaa5ba"
      unitRef="usd">345981000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfNC03LTEtMS0w_29e27186-ca5e-47c2-92b0-8a5d5c51c809"
      unitRef="usd">221245000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfNC05LTEtMS0w_f4a00fe8-6c03-4cf8-917d-69e503da435f"
      unitRef="usd">94445000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfNi01LTEtMS0w_4af8a4b3-5f2c-4a1d-8e4b-7acbb81cfc78"
      unitRef="usd">55921000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfNi03LTEtMS0w_8a27cdd9-c6cf-4515-b40d-9d2f8c660775"
      unitRef="usd">40381000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfNi05LTEtMS0w_711418f8-7e32-4592-91a3-e8ad25cb8d90"
      unitRef="usd">32587000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfNy01LTEtMS0w_1445957f-cc4a-4c4f-8d24-eaeaffc10ff1"
      unitRef="usd">52927000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfNy03LTEtMS0w_140c5928-f734-4d43-a14a-0d25508e8d55"
      unitRef="usd">36728000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfNy05LTEtMS0w_15002a80-6d82-4da1-8bd1-f0ce3861cd98"
      unitRef="usd">27047000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfOC01LTEtMS0w_8d3d4f8e-de90-4c0f-949d-cd120104a6d8"
      unitRef="usd">50694000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfOC03LTEtMS0w_3ad7767c-33c6-4098-a875-0ca4c5ed1766"
      unitRef="usd">38808000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfOC05LTEtMS0w_856aa594-bbc1-4543-9810-42323bfe40e2"
      unitRef="usd">29086000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:RestructuringCharges
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfOS01LTEtMS0w_1448841f-7e52-4fc2-a9d0-678334a07297"
      unitRef="usd">0</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfOS03LTEtMS0w_5bd53868-374f-46e5-8952-f824f5bbd154"
      unitRef="usd">2599000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfOS05LTEtMS0w_98a62d37-458a-45eb-8e7d-247d026aea41"
      unitRef="usd">4129000</us-gaap:RestructuringCharges>
    <us-gaap:OperatingExpenses
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTAtNS0xLTEtMA_f8e76269-0c9d-4ca0-a193-f269cb06fac2"
      unitRef="usd">159542000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTAtNy0xLTEtMA_9ad20b6f-7650-440d-8bc2-982287c9a237"
      unitRef="usd">118516000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTAtOS0xLTEtMA_ab6046f8-027e-42b8-bca7-90f03ceb4ed7"
      unitRef="usd">92849000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTEtNS0xLTEtMA_7780e69a-b2a2-48c2-95ae-7a18b4393f2d"
      unitRef="usd">186439000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTEtNy0xLTEtMA_c7f18da1-dc9c-4aac-9573-be0ba18e93d9"
      unitRef="usd">102729000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTEtOS0xLTEtMA_c2968238-ab0e-4236-9bf3-4304d71302e0"
      unitRef="usd">1596000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeDepositsWithFinancialInstitutions
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTMtNS0xLTEtMA_07d318d7-0087-4822-a3c9-f985a312c460"
      unitRef="usd">2156000</us-gaap:InterestIncomeDepositsWithFinancialInstitutions>
    <us-gaap:InterestIncomeDepositsWithFinancialInstitutions
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTMtNy0xLTEtMA_9a736b7c-d9eb-4dc2-b90c-90d78d438f30"
      unitRef="usd">2513000</us-gaap:InterestIncomeDepositsWithFinancialInstitutions>
    <us-gaap:InterestIncomeDepositsWithFinancialInstitutions
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTMtOS0xLTEtMA_4f714e82-805f-4ffe-a01e-e7e864cb6248"
      unitRef="usd">1058000</us-gaap:InterestIncomeDepositsWithFinancialInstitutions>
    <us-gaap:InterestExpense
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTQtNS0xLTEtMA_1e385f27-7303-4459-ab9b-b6065a92767a"
      unitRef="usd">21001000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTQtNy0xLTEtMA_4001d654-cf7d-46bd-9bc7-1c278ca0f6f9"
      unitRef="usd">9691000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTQtOS0xLTEtMA_0fc73f4d-a1cc-4131-95d5-b8ecc898adb9"
      unitRef="usd">10693000</us-gaap:InterestExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTUtNS0xLTEtMA_001f249a-daaf-432e-8566-0076b1ea3045"
      unitRef="usd">-3836000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTUtNy0xLTEtMA_519168e7-e7cb-4f3a-846c-944a864c7c40"
      unitRef="usd">-5437000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTUtOS0xLTEtMA_5b04f222-2aa8-4384-9f9d-73e92e63f629"
      unitRef="usd">-2190000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:GainLossOnDerivativeInstrumentsNetPretax
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTYtNS0xLTEtMA_8894175a-e602-40db-a976-25316be3f5bc"
      unitRef="usd">-44348000</us-gaap:GainLossOnDerivativeInstrumentsNetPretax>
    <us-gaap:GainLossOnDerivativeInstrumentsNetPretax
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTYtNy0xLTEtMA_cdf9d77e-1474-4f0a-85b3-e72ba8149523"
      unitRef="usd">0</us-gaap:GainLossOnDerivativeInstrumentsNetPretax>
    <us-gaap:GainLossOnDerivativeInstrumentsNetPretax
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTYtOS0xLTEtMjA3NA_4c054d37-7ef4-4dcf-bcf5-e72268ac9d80"
      unitRef="usd">0</us-gaap:GainLossOnDerivativeInstrumentsNetPretax>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTctNS0xLTEtMA_7f446892-7716-4434-a2a9-a28b219aa99f"
      unitRef="usd">-67029000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTctNy0xLTEtMA_7cf27573-c3b9-4e61-8779-d33afe6da55c"
      unitRef="usd">-12615000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTctOS0xLTEtMA_0ff4cb30-e854-4b51-a9a2-1309fbee75bd"
      unitRef="usd">-11825000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTgtNS0xLTEtMA_2e913e9d-8540-4a65-a503-c143802b230b"
      unitRef="usd">119410000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTgtNy0xLTEtMA_a07721c6-85c7-467e-a6ef-02121778bc6d"
      unitRef="usd">90114000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTgtOS0xLTEtMA_4c357e19-ba83-4d40-960b-4b7cd20af51a"
      unitRef="usd">-10229000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTktNS0xLTEtMA_b2054f43-eca0-4e75-9772-c27b418ba84e"
      unitRef="usd">-14585000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTktNy0xLTEtMA_7ee60207-8fb1-43ed-8575-9155024e9f78"
      unitRef="usd">-71034000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMTktOS0xLTEtMA_126d56cc-9c2b-49c2-b2e7-8639698b521c"
      unitRef="usd">1398000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjAtNS0xLTEtMA_7152a3d8-d754-4b00-affa-b961c17af334"
      unitRef="usd">133995000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjAtNy0xLTEtMA_555e69a9-21b1-4f95-a6fb-20a00e7f4713"
      unitRef="usd">161148000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjAtOS0xLTEtMA_2b805b70-f41c-4e7e-b5e0-23d1f6bc1fd8"
      unitRef="usd">-11627000</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjItNS0xLTEtMA_474c9a3e-8215-4d31-b44a-e573adea3cb1"
      unitRef="usdPerShare">1.07</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjItNy0xLTEtMA_a98a76b7-10eb-4110-976e-506395ef589a"
      unitRef="usdPerShare">1.38</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjItOS0xLTEtMA_1775db01-3afa-4fc4-846c-e28320b734ff"
      unitRef="usdPerShare">-0.12</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjMtNS0xLTEtMA_413312b4-3c16-4a63-8167-d0ebd7b59b51"
      unitRef="usdPerShare">0.95</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjMtNy0xLTEtMA_99f25bf8-737f-4ec8-9311-2222732d389b"
      unitRef="usdPerShare">1.23</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjMtOS0xLTEtMA_3e2b656b-2915-4e8f-834a-4769d7d0146e"
      unitRef="usdPerShare">-0.12</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjUtNS0xLTEtMA_7cbaa819-1185-490c-b235-1a3ca8b5a43d"
      unitRef="shares">125561000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjUtNy0xLTEtMA_383efe1e-409e-4cb6-8eb2-a5cdc1b7f76f"
      unitRef="shares">116713000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjUtOS0xLTEtMA_163e5d26-e434-4908-bcfb-37ca95531eda"
      unitRef="shares">99619000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjYtNS0xLTEtMA_bb40984e-4be5-4d5d-bbc6-0eb5c4c9201c"
      unitRef="shares">141918000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjYtNy0xLTEtMA_d4ef1bc8-c45e-40d8-b09f-41d4fb7829e8"
      unitRef="shares">131644000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80My9mcmFnOmVmYWY4MjM3Mjc1ZDRjM2ZiMjQzYzdiZWVmN2FiNmUzL3RhYmxlOmJkYzMxOTJjNjY4ZTQyZDlhZTk3MmFiYTY0MzE3YTMyL3RhYmxlcmFuZ2U6YmRjMzE5MmM2NjhlNDJkOWFlOTcyYWJhNjQzMTdhMzJfMjYtOS0xLTEtMA_f603e7d8-2995-4bfd-b1a7-dcf57cb3c0f2"
      unitRef="shares">99619000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80Ni9mcmFnOjQ5OTY1OTE0M2ExMDRhN2E5NWRmNDIyMDg0MzI3MTNmL3RhYmxlOjExMjcwNTllMWVmMTQzZWM5NjQxOWFjOWMwNTg1MmIzL3RhYmxlcmFuZ2U6MTEyNzA1OWUxZWYxNDNlYzk2NDE5YWM5YzA1ODUyYjNfMi01LTEtMS0w_7152a3d8-d754-4b00-affa-b961c17af334"
      unitRef="usd">133995000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80Ni9mcmFnOjQ5OTY1OTE0M2ExMDRhN2E5NWRmNDIyMDg0MzI3MTNmL3RhYmxlOjExMjcwNTllMWVmMTQzZWM5NjQxOWFjOWMwNTg1MmIzL3RhYmxlcmFuZ2U6MTEyNzA1OWUxZWYxNDNlYzk2NDE5YWM5YzA1ODUyYjNfMi03LTEtMS0w_555e69a9-21b1-4f95-a6fb-20a00e7f4713"
      unitRef="usd">161148000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80Ni9mcmFnOjQ5OTY1OTE0M2ExMDRhN2E5NWRmNDIyMDg0MzI3MTNmL3RhYmxlOjExMjcwNTllMWVmMTQzZWM5NjQxOWFjOWMwNTg1MmIzL3RhYmxlcmFuZ2U6MTEyNzA1OWUxZWYxNDNlYzk2NDE5YWM5YzA1ODUyYjNfMi05LTEtMS0w_2b805b70-f41c-4e7e-b5e0-23d1f6bc1fd8"
      unitRef="usd">-11627000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80Ni9mcmFnOjQ5OTY1OTE0M2ExMDRhN2E5NWRmNDIyMDg0MzI3MTNmL3RhYmxlOjExMjcwNTllMWVmMTQzZWM5NjQxOWFjOWMwNTg1MmIzL3RhYmxlcmFuZ2U6MTEyNzA1OWUxZWYxNDNlYzk2NDE5YWM5YzA1ODUyYjNfNC01LTEtMS0w_123623af-7466-4971-afb3-af4456c48cd1"
      unitRef="usd">1357000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80Ni9mcmFnOjQ5OTY1OTE0M2ExMDRhN2E5NWRmNDIyMDg0MzI3MTNmL3RhYmxlOjExMjcwNTllMWVmMTQzZWM5NjQxOWFjOWMwNTg1MmIzL3RhYmxlcmFuZ2U6MTEyNzA1OWUxZWYxNDNlYzk2NDE5YWM5YzA1ODUyYjNfNC03LTEtMS0w_91916cd7-2a2a-4d69-a26e-70023b0a902c"
      unitRef="usd">-1665000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80Ni9mcmFnOjQ5OTY1OTE0M2ExMDRhN2E5NWRmNDIyMDg0MzI3MTNmL3RhYmxlOjExMjcwNTllMWVmMTQzZWM5NjQxOWFjOWMwNTg1MmIzL3RhYmxlcmFuZ2U6MTEyNzA1OWUxZWYxNDNlYzk2NDE5YWM5YzA1ODUyYjNfNC05LTEtMS0w_13e5794c-2f4a-4c18-85b3-e0e60e76e2bd"
      unitRef="usd">1398000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80Ni9mcmFnOjQ5OTY1OTE0M2ExMDRhN2E5NWRmNDIyMDg0MzI3MTNmL3RhYmxlOjExMjcwNTllMWVmMTQzZWM5NjQxOWFjOWMwNTg1MmIzL3RhYmxlcmFuZ2U6MTEyNzA1OWUxZWYxNDNlYzk2NDE5YWM5YzA1ODUyYjNfNS01LTEtMS0w_9059ff3f-b9e2-42e1-8bba-5c543fb8132f"
      unitRef="usd">135352000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80Ni9mcmFnOjQ5OTY1OTE0M2ExMDRhN2E5NWRmNDIyMDg0MzI3MTNmL3RhYmxlOjExMjcwNTllMWVmMTQzZWM5NjQxOWFjOWMwNTg1MmIzL3RhYmxlcmFuZ2U6MTEyNzA1OWUxZWYxNDNlYzk2NDE5YWM5YzA1ODUyYjNfNS03LTEtMS0w_ec97bd64-37dd-41ab-86f5-7bdb86fde356"
      unitRef="usd">159483000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl80Ni9mcmFnOjQ5OTY1OTE0M2ExMDRhN2E5NWRmNDIyMDg0MzI3MTNmL3RhYmxlOjExMjcwNTllMWVmMTQzZWM5NjQxOWFjOWMwNTg1MmIzL3RhYmxlcmFuZ2U6MTEyNzA1OWUxZWYxNDNlYzk2NDE5YWM5YzA1ODUyYjNfNS05LTEtMS0w_d1ca7526-3de2-4518-955e-1045c0bbe55e"
      unitRef="usd">-10229000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="ib54a0c0993bc47cd8c46bb52807fabdd_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfOS0xLTEtMS0w_fb1fa12a-f503-4c31-8f57-84aaf9f19c86"
      unitRef="shares">85914000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="ib54a0c0993bc47cd8c46bb52807fabdd_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfOS0zLTEtMS0w_9684ebb0-3548-4860-9173-a932ac34814f"
      unitRef="usd">1000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ieb43984ec31443b3bf568a18a7703d34_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfOS01LTEtMS0w_7d9142d2-8bf6-4982-8e02-bf1eaa1f2419"
      unitRef="usd">287256000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i06f5a5959829426aa1a7e12543e7a597_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfOS03LTEtMS0w_aa0b6d3f-400a-430a-8afc-efda321d815d"
      unitRef="usd">-295727000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i80ec10162f544449aec63264c9ab43e1_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfOS05LTEtMS0w_33ebdd06-dbc7-4f15-8bff-ea41bdcff11f"
      unitRef="usd">-656000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i313ff8cf793547cfaaab91c7ecbea720_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfOS0xMS0xLTEtMA_6ab565dd-f57e-4aa0-b02d-9d1aab1aa91f"
      unitRef="usd">-9126000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i81af7ec9aa6d4bffa6c85a334a791078_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTAtNy0xLTEtMA_bc047ca0-b496-4827-b92b-cb0c3d842cc8"
      unitRef="usd">-38948000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia6268b6eb99c4c21a7b9e674f05b7e70_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTAtMTEtMS0xLTA_e5d7cac1-54e3-4319-a6e2-f5d531c93862"
      unitRef="usd">-38948000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="i4e8453fbca6f467c8654ff7b0bd828ba_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTEtMS0xLTEtMA_4e8c5994-5a25-43ad-8f9a-034390e8d158"
      unitRef="shares">3185000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i2de79d6c7d0a4ca79575cac872cd7e30_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTEtNS0xLTEtMA_7eb4b25a-745b-4295-89d7-42057a25df81"
      unitRef="usd">2806000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTEtMTEtMS0xLTA_da631fe4-815c-4baa-97de-7bebe50b6faa"
      unitRef="usd">2806000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="i4e8453fbca6f467c8654ff7b0bd828ba_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTItMS0xLTEtMA_5f2129ff-374c-4af4-a08f-ac4f892284f1"
      unitRef="shares">9524000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="i2de79d6c7d0a4ca79575cac872cd7e30_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTItNS0xLTEtMA_d98e582c-69cd-4c3c-a448-81adb3836fb6"
      unitRef="usd">19766000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTItMTEtMS0xLTA_3cd637b4-3a4f-4317-b1c2-c923780aafd3"
      unitRef="usd">19766000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesAcquisitions
      contextRef="i4e8453fbca6f467c8654ff7b0bd828ba_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTMtMS0xLTEtMA_d11f48fe-a25c-4067-bcb2-8e7fce3bcdb3"
      unitRef="shares">7500000</us-gaap:StockIssuedDuringPeriodSharesAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="i2de79d6c7d0a4ca79575cac872cd7e30_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTMtNS0xLTEtMA_81a683c8-7268-4ddb-a8a2-ab94482da6b6"
      unitRef="usd">32319000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTMtMTEtMS0xLTA_3f7b9bea-b061-4a42-a3a3-211d9a1e4a40"
      unitRef="usd">32319000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="i4e8453fbca6f467c8654ff7b0bd828ba_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTQtMS0xLTEtMA_02380682-c5a9-4f11-a85d-c6c3c1b7224a"
      unitRef="shares">912000</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i2de79d6c7d0a4ca79575cac872cd7e30_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTYtNS0xLTEtMA_7725bcb6-fb2e-4429-b84d-d9329b9dbdf1"
      unitRef="usd">11188000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTYtMTEtMS0xLTA_d9ed46e1-9d16-4924-be0f-09a4d67f299e"
      unitRef="usd">11188000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss
      contextRef="i48b64c9c6a38419baa22863383554005_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTctNy0xLTEtMA_d3762566-9033-4e3f-8d3b-adfc90434344"
      unitRef="usd">-11627000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTctMTEtMS0xLTA_9dccbdd3-2f9d-4251-80a0-344b1f27ffea"
      unitRef="usd">-11627000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
      contextRef="i5fd1fdb3ea924f8e8bcddfda15cf031e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTgtOS0xLTEtMA_69bcd970-3082-4d11-8c40-c9ff7dae3bf1"
      unitRef="usd">1398000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTgtMTEtMS0xLTA_abc63963-9eb3-4dd3-ab80-30048f188119"
      unitRef="usd">1398000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i2d4f89043aef4ad3b11f98a889e08adc_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTktMS0xLTEtMA_6ea6c3e9-d4db-44f3-8de3-b82f3e50092a"
      unitRef="shares">107035000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i2d4f89043aef4ad3b11f98a889e08adc_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTktMy0xLTEtMA_28490db5-cbe9-437a-92d0-2f8fe355ec72"
      unitRef="usd">1000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i6ad88192904e4e1e89b6e8c69d1c6359_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTktNS0xLTEtMA_27f55e00-6ba3-44c8-b6ee-25a8f26080f0"
      unitRef="usd">353335000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i410801cbba934d65ad91e7ee1c9bc908_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTktNy0xLTEtMA_68028bfa-06bf-4a4f-95a9-a80a1eaa95c4"
      unitRef="usd">-346302000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib632e5c4de99474bafaa537bfe3dd57c_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTktOS0xLTEtMA_f153fed0-3071-4b16-b110-75750024d854"
      unitRef="usd">742000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMTktMTEtMS0xLTA_c3b20d3d-b40f-4762-9a0d-6559b956ac2c"
      unitRef="usd">7776000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="idb284a1fce674b2bb8100244aa24d8e4_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjAtNS0xLTEtMA_31748fbd-a0ce-42b9-9209-046a89b7fe87"
      unitRef="usd">27000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i3e2f7da476d740edb1f721ba7ccf4213_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjAtNy0xLTEtMA_651590d8-7ec1-46d8-8208-93518b920013"
      unitRef="usd">-27000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i0de7d93ecc184767965b7fa7750a8ed3_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjAtMTEtMS0xLTA_1290631b-612b-4ae8-840d-19d06ef5a588"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="ie6e273e1c2304021b392c0969e1e32e7_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjEtMS0xLTEtMA_2a11111f-d2ee-4af9-92b4-e51112c88c64"
      unitRef="shares">5273000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="iaf272a66dee94fb28906218c4fa2b48f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjEtNS0xLTEtMA_70a7fec5-a22c-4087-b15d-986e6dfe6849"
      unitRef="usd">4985000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjEtMTEtMS0xLTA_71b39206-9274-4f0f-bc60-dc6bc9a4bb6b"
      unitRef="usd">4985000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="iaf272a66dee94fb28906218c4fa2b48f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjItNS0xLTEtMA_53b78f96-202b-4a9e-9092-c88a0c0c11b6"
      unitRef="usd">8198000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjItMTEtMS0xLTA_f37f105f-fdbb-4c59-b632-a6a28bfb7a31"
      unitRef="usd">8198000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:DebtConversionConvertedInstrumentSharesIssued1
      contextRef="ie6e273e1c2304021b392c0969e1e32e7_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjMtMS0xLTEtMA_eb50ceed-0161-496b-b087-7bc63f1e300c"
      unitRef="shares">10801000</us-gaap:DebtConversionConvertedInstrumentSharesIssued1>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature
      contextRef="iaf272a66dee94fb28906218c4fa2b48f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjMtNS0xLTEtMA_da671cae-0fd7-4f8d-9903-b037195f7d48"
      unitRef="usd">58857000</us-gaap:AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjMtMTEtMS0xLTA_d0f6410e-8894-4fd3-896f-e6576ccaedfb"
      unitRef="usd">58857000</us-gaap:AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebtSubsequentAdjustments
      contextRef="iaf272a66dee94fb28906218c4fa2b48f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjQtNS0xLTEtMA_9791bce8-5b5a-4dab-b8aa-fdc357a6ee43"
      unitRef="usd">-35387000</us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebtSubsequentAdjustments>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebtSubsequentAdjustments
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjQtMTEtMS0xLTA_9f59c0f6-2671-44a8-bcfe-9cb523799c42"
      unitRef="usd">-35387000</us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebtSubsequentAdjustments>
    <enph:AdjustmentstoAdditionalPaidinCapitalConvertibleBondHedge
      contextRef="iaf272a66dee94fb28906218c4fa2b48f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjUtNS0xLTEtMA_0eaeeec8-f300-44b0-83d4-8efa633393aa"
      unitRef="usd">36313000</enph:AdjustmentstoAdditionalPaidinCapitalConvertibleBondHedge>
    <enph:AdjustmentstoAdditionalPaidinCapitalConvertibleBondHedge
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjUtMTEtMS0xLTA_d4470ba1-7616-44f3-84fd-106ee46476c2"
      unitRef="usd">36313000</enph:AdjustmentstoAdditionalPaidinCapitalConvertibleBondHedge>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued
      contextRef="iaf272a66dee94fb28906218c4fa2b48f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjYtNS0xLTEtMA_90c148c4-8990-4792-bec9-edaed6af5a02"
      unitRef="usd">29818000</us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMjYtMTEtMS0xLTA_07fcc87e-d942-437d-9455-7df2e9cd076c"
      unitRef="usd">29818000</us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="iaf272a66dee94fb28906218c4fa2b48f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzEtNS0xLTEtMA_4f6a8eee-c9ef-49a3-a758-f5b1712ab616"
      unitRef="usd">20417000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzEtMTEtMS0xLTA_df89048f-ecb2-464e-bcbe-084aebd03ee8"
      unitRef="usd">20417000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss
      contextRef="i1f6e9458407c487991aab9f5fb100105_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzItNy0xLTEtMA_22eece19-587e-4c69-8920-4a3072836309"
      unitRef="usd">161148000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzItMTEtMS0xLTA_6e365f01-89a0-4725-9dc2-a118aa4b5e40"
      unitRef="usd">161148000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
      contextRef="i12420449da734b418f2daa32e09521ea_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzMtOS0xLTEtMA_ffe609d5-321a-4278-aacb-bdc58e910f69"
      unitRef="usd">-1665000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzMtMTEtMS0xLTA_eb6c6f73-a1ee-48ff-a10e-2a8dabcf3253"
      unitRef="usd">-1665000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i7378881eab634578bbf6eec31bedeb05_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzQtMS0xLTEtMA_5917b3ed-0043-48ab-9f3d-f2bf41c1f9b1"
      unitRef="shares">123109000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i7378881eab634578bbf6eec31bedeb05_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzQtMy0xLTEtMA_f53dbe38-bd76-4d31-84cf-98cb5afd8ba8"
      unitRef="usd">1000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iff7adff2d75a44cb92bca24ae66ccfb5_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzQtNS0xLTEtMA_be3e8f85-d9e7-48da-b9cd-8f923bbeea67"
      unitRef="usd">458315000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia70d008829a642f19dd7ace2b0408068_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzQtNy0xLTEtMA_d4040203-14f9-43cd-9d68-9dc0b3da4ed4"
      unitRef="usd">-185181000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i29fae38634db447aa270394aeb97e896_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzQtOS0xLTEtMA_40a3d6e4-f822-4b6a-a6a1-9fe0571d631e"
      unitRef="usd">-923000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzQtMTEtMS0xLTA_2bd4d537-fc15-4df3-859b-b3943d4164d7"
      unitRef="usd">272212000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="ifebbef0b84e04d0797d94ccc3d0e06ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzYtMS0xLTEtMjE0OQ_f30b552d-8840-464d-bfe6-e00cfc37d8ee"
      unitRef="shares">4002000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i366f80a6576746e183023fd17c4e8ca0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzYtNS0xLTEtMjE0OQ_2ad83e70-ef89-4bda-a644-8eb2e883c377"
      unitRef="usd">8395000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzYtMTEtMS0xLTIxNDk_77bc89ed-6011-4a1c-abe4-3bc196665781"
      unitRef="usd">8395000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i366f80a6576746e183023fd17c4e8ca0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzctNS0xLTEtMjE0OQ_74894abd-32e2-43e7-9d5c-fc54392fad6b"
      unitRef="usd">68330000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzctMTEtMS0xLTIxNDk_c16f2223-9f62-419e-85d3-79418f6102cb"
      unitRef="usd">68330000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt
      contextRef="i366f80a6576746e183023fd17c4e8ca0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzktNS0xLTEtMjE0OQ_6cc510d4-7ec4-4ee2-9ad0-4fc486e5b781"
      unitRef="usd">116502000</us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfMzktMTEtMS0xLTIxNDk_e627aa41-3194-422c-a192-1f99d096beaf"
      unitRef="usd">116502000</us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt>
    <enph:AdjustmentstoAdditionalPaidinCapitalConvertibleBondHedge
      contextRef="i366f80a6576746e183023fd17c4e8ca0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDAtNS0xLTEtMjE0OQ_ff05d453-2d6c-473c-81cb-1ce8619234f0"
      unitRef="usd">117108000</enph:AdjustmentstoAdditionalPaidinCapitalConvertibleBondHedge>
    <enph:AdjustmentstoAdditionalPaidinCapitalConvertibleBondHedge
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDAtMTEtMS0xLTIxNDk_8165bf76-ab93-4307-ab00-f4ad0f396df4"
      unitRef="usd">117108000</enph:AdjustmentstoAdditionalPaidinCapitalConvertibleBondHedge>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued
      contextRef="i366f80a6576746e183023fd17c4e8ca0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDEtNS0xLTEtMjE0OQ_40201439-94b6-416c-9407-b371e4dd1ffe"
      unitRef="usd">96351000</us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDEtMTEtMS0xLTIxNDk_a4a54740-e924-4e64-ace4-a84300996015"
      unitRef="usd">96351000</us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebtSubsequentAdjustments
      contextRef="i366f80a6576746e183023fd17c4e8ca0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDItNS0xLTEtMjE0OQ_c7170212-bee7-49de-95c7-8ef74ff3c650"
      unitRef="usd">306220000</us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebtSubsequentAdjustments>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebtSubsequentAdjustments
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDItMTEtMS0xLTIxNDk_e62596a1-72d0-47c7-b196-960b46d16bf7"
      unitRef="usd">306220000</us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebtSubsequentAdjustments>
    <us-gaap:DebtConversionConvertedInstrumentSharesIssued1
      contextRef="ifebbef0b84e04d0797d94ccc3d0e06ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDMtMS0xLTEtMjE0OQ_f2b40b68-a4d2-4477-ab21-73ecfb7b67fb"
      unitRef="shares">1851000</us-gaap:DebtConversionConvertedInstrumentSharesIssued1>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature
      contextRef="i366f80a6576746e183023fd17c4e8ca0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDMtNS0xLTEtMjE0OQ_4491712f-b297-4bb5-858c-010d461d414f"
      unitRef="usd">301015000</us-gaap:AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDMtMTEtMS0xLTIxNDk_d2da5a10-9b2e-417a-8aa3-e2947d23987b"
      unitRef="usd">301015000</us-gaap:AdjustmentsToAdditionalPaidInCapitalConvertibleDebtWithConversionFeature>
    <enph:ConvertibleNotesHedgeUnwound
      contextRef="ifebbef0b84e04d0797d94ccc3d0e06ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDQtMS0xLTEtMjE0OQ_ef1d9be7-1cff-4e58-9005-7e640fc4098b"
      unitRef="shares">-1851000</enph:ConvertibleNotesHedgeUnwound>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="ifebbef0b84e04d0797d94ccc3d0e06ea_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDYtMS0xLTEtMjE0OQ_e7d1a93c-a848-4f1e-a55c-c44659aab233"
      unitRef="shares">1851000</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <enph:AdjustmentsToAdditionalPaidInCapitalAcquisitionsChangeInFairValueOfCommonStock
      contextRef="i366f80a6576746e183023fd17c4e8ca0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDctNS0xLTEtNjM2Mg_6ede0a03-b952-4957-bb10-f3442e7276dd"
      unitRef="usd">3321000</enph:AdjustmentsToAdditionalPaidInCapitalAcquisitionsChangeInFairValueOfCommonStock>
    <enph:AdjustmentsToAdditionalPaidInCapitalAcquisitionsChangeInFairValueOfCommonStock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDctMTEtMS0xLTY2Mjg_33b2a6a0-8b87-4c76-8a7d-a0b8ed58efb3"
      unitRef="usd">3321000</enph:AdjustmentsToAdditionalPaidInCapitalAcquisitionsChangeInFairValueOfCommonStock>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i366f80a6576746e183023fd17c4e8ca0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDctNS0xLTEtMjE0OQ_ac135c82-ff79-499f-aa72-c144a840e2c8"
      unitRef="usd">42503000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDctMTEtMS0xLTIxNDk_fffb69a0-82ca-4b09-8bb2-0ec64fddcffe"
      unitRef="usd">42503000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss
      contextRef="i0636a82c72244bb7b7bed735ff738388_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDgtNy0xLTEtMjE0OQ_051435a2-9fb1-48fa-a54a-8482fae84604"
      unitRef="usd">133995000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDgtMTEtMS0xLTIxNDk_449f5b8f-a8b0-4ad5-8237-a835ba30e434"
      unitRef="usd">133995000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
      contextRef="ib910191441924684909a321b264dc252_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDktOS0xLTEtMjE0OQ_b72ea795-f5db-438f-b0b6-2149cb98f0e0"
      unitRef="usd">1357000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNDktMTEtMS0xLTIxNDk_8a0d9cd4-a917-4cf2-9a0c-0962be67986a"
      unitRef="usd">1357000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="id4cf7db73277476caa207918214c53e5_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNTAtMS0xLTEtMjE0OQ_325c0ccd-44d4-4573-ac9a-b595e89591a6"
      unitRef="shares">128962000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="id4cf7db73277476caa207918214c53e5_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNTAtMy0xLTEtMjE0OQ_6665ecef-b640-4b23-85ab-74c664bd3a30"
      unitRef="usd">1000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="idba5f1ab7df7462d91579400fad23171_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNTAtNS0xLTEtMjE0OQ_cbf2500d-8aaa-41af-88f0-01896ec005a9"
      unitRef="usd">534744000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib12e87c4edb24474838099f3b33db327_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNTAtNy0xLTEtMjE0OQ_e10fab5e-604a-4a86-b67e-74bbbb14b238"
      unitRef="usd">-51186000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8136b1a28a8748329875b612fb459ee3_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNTAtOS0xLTEtMjE0OQ_a888858b-c3b6-4660-a4b3-5c96cb6b13e9"
      unitRef="usd">434000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81NS9mcmFnOmI2M2U3NzE0NzFjMzQwNGY4ZmQyODI5ZWE0NGI4ZDlhL3RhYmxlOjIxNzNkNjRhMjY4ODRiMDE4MTQzYTUxMDk3ZmRkNWJmL3RhYmxlcmFuZ2U6MjE3M2Q2NGEyNjg4NGIwMTgxNDNhNTEwOTdmZGQ1YmZfNTAtMTEtMS0xLTIxNDk_d81add98-f9ae-4232-8296-89d07416b132"
      unitRef="usd">483993000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMy03LTEtMS0w_4ff0e82f-0158-47fe-acc7-4f662928d605"
      unitRef="usd">133995000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMy05LTEtMS0w_16654f78-fb1e-42ef-a646-3ee91ab6b66c"
      unitRef="usd">161148000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMy0xMS0xLTEtMA_2dfdcd8c-718e-40a6-a5a6-3a1f1bc2a6c9"
      unitRef="usd">-11627000</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNS03LTEtMS0w_71002b21-72ee-446e-83db-1871681c3eff"
      unitRef="usd">18103000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNS05LTEtMS0w_1f365728-84e5-4421-acb8-aa4d50efbd24"
      unitRef="usd">14119000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNS0xMS0xLTEtMA_8d4685dc-009b-40a6-ad0f-db617997623b"
      unitRef="usd">9667000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNi03LTEtMS0w_a1013991-e4ad-4c3f-a25a-78e0207dfdc9"
      unitRef="usd">425000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNi05LTEtMS0w_9082637f-607f-412a-bc59-73c3e3e0b047"
      unitRef="usd">217000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNi0xMS0xLTEtMA_0723c142-04f5-499b-b69f-08e2b55acc9d"
      unitRef="usd">711000</us-gaap:ProvisionForDoubtfulAccounts>
    <enph:AssetImpairmentAndLeaseLossReserve
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfOC03LTEtMS0w_40d20300-24e0-4f1b-83bb-db8f697d18d7"
      unitRef="usd">0</enph:AssetImpairmentAndLeaseLossReserve>
    <enph:AssetImpairmentAndLeaseLossReserve
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfOC05LTEtMS0w_a0519f85-ce52-4489-868f-d3d71839d16d"
      unitRef="usd">1124000</enph:AssetImpairmentAndLeaseLossReserve>
    <enph:AssetImpairmentAndLeaseLossReserve
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfOC0xMS0xLTEtMA_ad13de20-cf44-451e-bed4-b2c029490415"
      unitRef="usd">1601000</enph:AssetImpairmentAndLeaseLossReserve>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="id59ea6d1ab7849aba031da54569bf40d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfOS03LTEtMS0w_5bdf802e-d165-48f5-977f-06edca00e023"
      unitRef="usd">-3037000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="ic2bca91224874214bdd63056fd92036f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfOS05LTEtMS0w_47137a20-7a1a-408b-a9f0-d05ab62ffee7"
      unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="ifad06bdb0f404ecbaf17dade497a5f5b_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfOS0xMS0xLTEtMA_fc306cac-f51a-4a6a-8aa0-cff239f20471"
      unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <enph:DeemedRepaymentOfConvertibleNotesAttributableToAccretedDebtDiscount
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTAtNy0xLTEtMjE3Mg_c66b30cd-31f2-4d7c-93ca-a46396798dde"
      unitRef="usd">3132000</enph:DeemedRepaymentOfConvertibleNotesAttributableToAccretedDebtDiscount>
    <enph:DeemedRepaymentOfConvertibleNotesAttributableToAccretedDebtDiscount
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTAtOS0xLTEtMjE3Mg_78ae0925-9bef-4fc0-bccb-004e8c9f2f0d"
      unitRef="usd">0</enph:DeemedRepaymentOfConvertibleNotesAttributableToAccretedDebtDiscount>
    <enph:DeemedRepaymentOfConvertibleNotesAttributableToAccretedDebtDiscount
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTAtMTEtMS0xLTIxNzI_c92ef10f-d3cd-4d94-9505-10fc374f9ec5"
      unitRef="usd">0</enph:DeemedRepaymentOfConvertibleNotesAttributableToAccretedDebtDiscount>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTAtNy0xLTEtMA_03d12d60-3e2d-46ad-ab0e-a84d8e6c42cd"
      unitRef="usd">18825000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTAtOS0xLTEtMA_b369f240-d40e-4b58-bc16-ff1fc36734f5"
      unitRef="usd">6081000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTAtMTEtMS0xLTA_5d665a46-9f41-4f97-a24c-fc8cf044c1c9"
      unitRef="usd">2701000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTEtNy0xLTEtMA_9bbe24d3-dd7c-4b76-976e-b5f730d674bc"
      unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTEtOS0xLTEtMA_81da78cb-389a-4f47-af47-107ad1c1cdd2"
      unitRef="usd">-2152000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTEtMTEtMS0xLTA_4345fe54-d58f-4ba7-ba56-5128d4929019"
      unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainLossOnRepurchaseOfDebtInstrument
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTItNy0xLTEtMA_a50d7da1-bf8b-4f18-a473-f7237de73ba2"
      unitRef="usd">0</us-gaap:GainLossOnRepurchaseOfDebtInstrument>
    <us-gaap:GainLossOnRepurchaseOfDebtInstrument
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTItOS0xLTEtMA_9fe846fb-c4cd-4f9f-8513-e0c104eaf877"
      unitRef="usd">-6000000</us-gaap:GainLossOnRepurchaseOfDebtInstrument>
    <us-gaap:GainLossOnRepurchaseOfDebtInstrument
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTItMTEtMS0xLTA_4b1bbb6d-8886-4aec-816c-0c45eff7a213"
      unitRef="usd">0</us-gaap:GainLossOnRepurchaseOfDebtInstrument>
    <us-gaap:ShareBasedCompensation
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTMtNy0xLTEtMA_558ece2e-8b1e-488a-8fc3-9abeb54aecdc"
      unitRef="usd">42503000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTMtOS0xLTEtMA_c6503fe4-8207-400a-b143-3ff75f012218"
      unitRef="usd">20176000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTMtMTEtMS0xLTA_ebdffd55-8d11-429d-a5c4-969a1ae93bab"
      unitRef="usd">11432000</us-gaap:ShareBasedCompensation>
    <us-gaap:GainLossOnDerivativeInstrumentsNetPretax
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTQtNy0xLTEtMA_cdfb24b0-6af6-4550-9efb-e0062097d174"
      unitRef="usd">-44348000</us-gaap:GainLossOnDerivativeInstrumentsNetPretax>
    <us-gaap:GainLossOnDerivativeInstrumentsNetPretax
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTQtOS0xLTEtMA_92d00f29-a819-41ef-8786-a07cc72f72b2"
      unitRef="usd">0</us-gaap:GainLossOnDerivativeInstrumentsNetPretax>
    <us-gaap:GainLossOnDerivativeInstrumentsNetPretax
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTQtMTEtMS0xLTA_7e40a466-fab0-44f5-8b68-c5ac667cf749"
      unitRef="usd">0</us-gaap:GainLossOnDerivativeInstrumentsNetPretax>
    <us-gaap:IncreaseDecreaseInDeferredIncomeTaxes
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTUtNy0xLTEtMA_c52f2a8c-338b-4f22-9b43-2cb80867d39a"
      unitRef="usd">17117000</us-gaap:IncreaseDecreaseInDeferredIncomeTaxes>
    <us-gaap:IncreaseDecreaseInDeferredIncomeTaxes
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTUtOS0xLTEtMA_ea217899-2fe1-488f-9dec-042135bb3772"
      unitRef="usd">73375000</us-gaap:IncreaseDecreaseInDeferredIncomeTaxes>
    <us-gaap:IncreaseDecreaseInDeferredIncomeTaxes
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTUtMTEtMS0xLTA_b603ccde-0001-4334-9eea-0f4bc945b957"
      unitRef="usd">-123000</us-gaap:IncreaseDecreaseInDeferredIncomeTaxes>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTctNy0xLTEtMA_4097a1c2-1515-4b99-9609-ff5d13c0f85d"
      unitRef="usd">34321000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTctOS0xLTEtMA_21cd0b3c-b89b-4f91-b4df-2abcfa6d5172"
      unitRef="usd">68745000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTctMTEtMS0xLTA_a5661def-85dd-4a73-981c-50f723a75b92"
      unitRef="usd">13515000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTgtNy0xLTEtMA_91171a39-b764-492f-bb83-58babad68e46"
      unitRef="usd">9708000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTgtOS0xLTEtMA_3af4d280-6695-4498-bd44-9f8e02a4c8e9"
      unitRef="usd">15789000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTgtMTEtMS0xLTA_bc669733-5104-4110-ae0a-15e73d19ad41"
      unitRef="usd">-9732000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTktNy0xLTEtMA_b7f48c79-9369-4873-b346-b50c758e491d"
      unitRef="usd">14636000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTktOS0xLTEtMA_fbf3bd9f-2ff0-4d9d-88c0-4361d1884439"
      unitRef="usd">14293000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMTktMTEtMS0xLTA_35855f25-e704-490f-834a-b1806d802925"
      unitRef="usd">3130000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInIntangibleAssetsCurrent
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjAtNy0xLTEtMA_62067832-18ab-494a-9671-dcb5ee4beead"
      unitRef="usd">0</us-gaap:IncreaseDecreaseInIntangibleAssetsCurrent>
    <us-gaap:IncreaseDecreaseInIntangibleAssetsCurrent
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjAtOS0xLTEtMA_01ba49d6-dbba-41e9-86ab-ef04ebceb9cd"
      unitRef="usd">0</us-gaap:IncreaseDecreaseInIntangibleAssetsCurrent>
    <us-gaap:IncreaseDecreaseInIntangibleAssetsCurrent
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjAtMTEtMS0xLTA_918eb2b2-ac56-4ca4-b730-180794b5fc98"
      unitRef="usd">10000000</us-gaap:IncreaseDecreaseInIntangibleAssetsCurrent>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjEtNy0xLTEtMA_e69f33fd-6300-4d74-a1fa-afde1c0b9991"
      unitRef="usd">35695000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjEtOS0xLTEtMA_ea90b5dd-4e18-4e34-8d51-edabdaeb21bb"
      unitRef="usd">22200000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjEtMTEtMS0xLTA_5fb4f471-9e94-4b7c-8d8d-e7e5b67db5d8"
      unitRef="usd">23082000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <enph:IncreaseDecreaseInWarrantyObligations
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjItNy0xLTEtMA_9fbe4b7f-aae4-4b9e-aeb1-21735d65a414"
      unitRef="usd">8815000</enph:IncreaseDecreaseInWarrantyObligations>
    <enph:IncreaseDecreaseInWarrantyObligations
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjItOS0xLTEtMA_f2711fa9-b400-4b3b-a053-7147248d634e"
      unitRef="usd">5804000</enph:IncreaseDecreaseInWarrantyObligations>
    <enph:IncreaseDecreaseInWarrantyObligations
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjItMTEtMS0xLTA_ab7ae09c-eb47-4fa3-89a8-6dcc89f5193c"
      unitRef="usd">1478000</enph:IncreaseDecreaseInWarrantyObligations>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjMtNy0xLTEtMA_35faf589-0cc2-42e9-ba7e-db952159c5ed"
      unitRef="usd">-10498000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjMtOS0xLTEtMA_42e6d653-7f92-464b-834d-bbfb5ff2bc71"
      unitRef="usd">72248000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjMtMTEtMS0xLTA_7e5809bb-a865-4d1c-8772-9efc787a7e61"
      unitRef="usd">-6123000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjQtNy0xLTEtMA_2e954d6a-2ca7-4165-9c31-5bee40c9acea"
      unitRef="usd">216334000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjQtOS0xLTEtMA_4aba7f94-b2de-4087-b53a-e289f044fc3e"
      unitRef="usd">139067000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjQtMTEtMS0xLTA_6641f5f2-9789-4399-b9b8-dd03bc84bab1"
      unitRef="usd">16132000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjYtNy0xLTEtMA_71044691-cb67-4fe1-b44c-3c81927fa39c"
      unitRef="usd">20558000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjYtOS0xLTEtMA_15db230c-6514-4095-9ef1-2bb425c44831"
      unitRef="usd">14788000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjYtMTEtMS0xLTA_282bd74f-616f-4683-9d6d-b8dd5c74400d"
      unitRef="usd">4151000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjgtNy0xLTEtMA_f81628ab-23f9-4dfd-938d-bf96eef65718"
      unitRef="usd">5010000</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjgtOS0xLTEtMA_0237c2cd-6036-4b61-89ca-f45d85731d9c"
      unitRef="usd">0</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjgtMTEtMS0xLTA_197ab500-9653-4255-adf1-26f8567928e7"
      unitRef="usd">0</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjktNy0xLTEtMA_56568200-0f06-415e-a97c-fd6dcdf1b84d"
      unitRef="usd">0</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjktOS0xLTEtMA_34783795-6ea2-4983-aafe-c2ec1baf3b98"
      unitRef="usd">0</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMjktMTEtMS0xLTA_cd80ac13-7941-4025-89e7-0bac1b42b12c"
      unitRef="usd">15000000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzAtNy0xLTEtMA_a7ac1320-f3a8-4315-a3c3-dabfd5f3c8fe"
      unitRef="usd">-25568000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzAtOS0xLTEtMA_1a3287a1-7093-4d5e-8c01-bf96dbc0e7ad"
      unitRef="usd">-14788000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzAtMTEtMS0xLTA_a3b2d13e-6cc2-488e-b6ca-186a182af453"
      unitRef="usd">-19151000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <enph:ProceedsfromConvertibleDebtNetofIssuanceCosts
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzItNy0xLTEtMA_93276c13-af93-4462-be00-61828abae007"
      unitRef="usd">312420000</enph:ProceedsfromConvertibleDebtNetofIssuanceCosts>
    <enph:ProceedsfromConvertibleDebtNetofIssuanceCosts
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzItOS0xLTEtMA_43456484-8db9-41f3-ba4b-4f69997d1bfd"
      unitRef="usd">127413000</enph:ProceedsfromConvertibleDebtNetofIssuanceCosts>
    <enph:ProceedsfromConvertibleDebtNetofIssuanceCosts
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzItMTEtMS0xLTA_20a94cd3-b6f7-49f4-979c-54302c7fba34"
      unitRef="usd">0</enph:ProceedsfromConvertibleDebtNetofIssuanceCosts>
    <us-gaap:PaymentsForHedgeFinancingActivities
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzMtNy0xLTEtMA_bef36f2a-fdba-45da-a725-2cd58d391d59"
      unitRef="usd">89056000</us-gaap:PaymentsForHedgeFinancingActivities>
    <us-gaap:PaymentsForHedgeFinancingActivities
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzMtOS0xLTEtMA_4e9778a6-5e75-46f1-8036-38aac6706c0b"
      unitRef="usd">36313000</us-gaap:PaymentsForHedgeFinancingActivities>
    <us-gaap:PaymentsForHedgeFinancingActivities
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzMtMTEtMS0xLTA_207903d2-9cd4-40f3-b7c9-929ea9928735"
      unitRef="usd">0</us-gaap:PaymentsForHedgeFinancingActivities>
    <us-gaap:ProceedsFromIssuanceOfWarrants
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzQtNy0xLTEtMA_5d02d364-3cee-4ab7-9846-12915f48662e"
      unitRef="usd">71552000</us-gaap:ProceedsFromIssuanceOfWarrants>
    <us-gaap:ProceedsFromIssuanceOfWarrants
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzQtOS0xLTEtMA_ec386174-0c71-4efe-bb66-934a97fad5f2"
      unitRef="usd">29818000</us-gaap:ProceedsFromIssuanceOfWarrants>
    <us-gaap:ProceedsFromIssuanceOfWarrants
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzQtMTEtMS0xLTA_f8b44bea-13f0-40c9-b9fb-f4a692730cca"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfWarrants>
    <us-gaap:PaymentsOfDebtExtinguishmentCosts
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzUtNy0xLTEtMA_1ba334d2-275a-4097-8c16-1d8216b05476"
      unitRef="usd">0</us-gaap:PaymentsOfDebtExtinguishmentCosts>
    <us-gaap:PaymentsOfDebtExtinguishmentCosts
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzUtOS0xLTEtMA_eff9133c-94ba-4bd8-bd1e-39bc66526884"
      unitRef="usd">6000000</us-gaap:PaymentsOfDebtExtinguishmentCosts>
    <us-gaap:PaymentsOfDebtExtinguishmentCosts
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzUtMTEtMS0xLTA_58c4fb61-73c2-4f27-ab22-9955386baed8"
      unitRef="usd">0</us-gaap:PaymentsOfDebtExtinguishmentCosts>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzktNy0xLTEtMA_5c981d71-c1a6-4018-b8f4-70efa1146f6f"
      unitRef="usd">2575000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzktOS0xLTEtMA_c1e1b392-99f3-45e1-adb4-8b935d534673"
      unitRef="usd">45855000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfMzktMTEtMS0xLTA_2e0709a8-90d7-4668-8ac5-e85427593f9b"
      unitRef="usd">9976000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDAtNy0xLTEtMA_a97a239e-fcc2-4ac6-b25d-66624f5cd05d"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDAtOS0xLTEtMA_64f2a099-8e91-4ec0-894f-68f9eee43f33"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDAtMTEtMS0xLTA_8e068f98-3cd4-43a1-9513-1b30e411550e"
      unitRef="usd">19766000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDEtNy0xLTEtMA_5c0746a7-3d6a-4040-9820-6173dc04c7e8"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDEtOS0xLTEtMA_93ccd2f9-9c84-40a8-beda-4ea179831b0b"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDEtMTEtMS0xLTA_7590f37b-1db3-48b5-a2ee-10ef91b05eb4"
      unitRef="usd">68024000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <enph:RepurchaseForRepurchaseOfConvertibleNote
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDItNy0xLTEtMA_27958bad-225e-42ee-9df8-e30aef478d9c"
      unitRef="usd">40728000</enph:RepurchaseForRepurchaseOfConvertibleNote>
    <enph:RepurchaseForRepurchaseOfConvertibleNote
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDItOS0xLTEtMA_1215b89d-ae13-44e1-9fd8-2693e34af25d"
      unitRef="usd">0</enph:RepurchaseForRepurchaseOfConvertibleNote>
    <enph:RepurchaseForRepurchaseOfConvertibleNote
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDItMTEtMS0xLTA_e2b9aba3-cc7f-46f0-86a9-e6d8a5761d9c"
      unitRef="usd">0</enph:RepurchaseForRepurchaseOfConvertibleNote>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDYtNy0xLTEtMA_8c4abaf4-8695-4e7d-8686-69811a7c743d"
      unitRef="usd">8395000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDYtOS0xLTEtMA_2a12384a-6de1-4fd0-a6c9-05db779cf2a1"
      unitRef="usd">4985000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDYtMTEtMS0xLTA_d9ae10e8-86bb-46c0-91d6-765dd265f21c"
      unitRef="usd">2800000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDctNy0xLTEtMA_048fa9b9-c028-42a8-b828-f58e387e694a"
      unitRef="usd">68330000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDctOS0xLTEtMA_3eaeb886-f712-4017-b40f-8406e18bbe59"
      unitRef="usd">8198000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDctMTEtMS0xLTA_e2f9f6fb-a145-4b9b-9098-bf14d446b2b5"
      unitRef="usd">0</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDktNy0xLTEtMA_88652df3-ec1f-4847-b723-75a62029fe7f"
      unitRef="usd">191678000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDktOS0xLTEtMA_d1c6439f-e520-4308-aebe-d25d32babaf0"
      unitRef="usd">65850000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNDktMTEtMS0xLTA_128aa9c4-6b67-4491-afcc-b2606aca2a9b"
      unitRef="usd">80614000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTAtNy0xLTEtMA_290af580-cd37-419f-a73b-f2f014ad6ea4"
      unitRef="usd">826000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTAtOS0xLTEtMA_9456ead7-86eb-4860-9530-37f25a49af6a"
      unitRef="usd">-257000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTAtMTEtMS0xLTA_82c6e936-21cc-4045-92ad-bc3691db0fca"
      unitRef="usd">-502000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTEtNy0xLTEtMA_0fc3a128-6dd7-4324-87ba-7fc500417145"
      unitRef="usd">383270000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTEtOS0xLTEtMA_895d3b6a-19ff-40f8-ac1f-6418a4548453"
      unitRef="usd">189872000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTEtMTEtMS0xLTA_18c2f345-0e72-4381-afcc-ddc26a45c5c9"
      unitRef="usd">77093000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTItNy0xLTEtMA_d1e62815-a92d-4ca6-b46a-f23c1da82e5f"
      unitRef="usd">296109000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTItOS0xLTEtMA_51d6545b-3612-4171-b513-bbe807e42415"
      unitRef="usd">106237000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i313ff8cf793547cfaaab91c7ecbea720_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTItMTEtMS0xLTA_fc636529-74c0-4e1c-a153-eb49e5bd2914"
      unitRef="usd">29144000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTMtNy0xLTEtMA_b089127c-71b4-4917-a594-fe1e5675266c"
      unitRef="usd">679379000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTMtOS0xLTEtMA_e9472ef2-c1f6-4942-ae23-a8d47175a72c"
      unitRef="usd">296109000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTMtMTEtMS0xLTA_dd545665-fd86-40af-8a9a-f2f6768aa467"
      unitRef="usd">106237000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTUtNy0xLTEtMA_d89508e0-5eee-48a9-a66d-b7d0353398dc"
      unitRef="usd">679379000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTUtOS0xLTEtMA_c2a32f67-4759-4684-8dc0-106ade8630a9"
      unitRef="usd">251409000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTUtMTEtMS0xLTA_0b386a3c-3a5a-4922-af0b-2e6fb16bb2a4"
      unitRef="usd">106237000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCash
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTYtNy0xLTEtMA_39126e3a-4583-4132-bb7c-042348e74d21"
      unitRef="usd">0</us-gaap:RestrictedCash>
    <us-gaap:RestrictedCash
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTYtOS0xLTEtMA_f95c6d96-6b17-41b7-a3e9-8354e58cf52d"
      unitRef="usd">44700000</us-gaap:RestrictedCash>
    <us-gaap:RestrictedCash
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTYtMTEtMS0xLTA_c660f12d-d62a-42d1-9e14-9ee5493ed423"
      unitRef="usd">0</us-gaap:RestrictedCash>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTctNy0xLTEtMA_39713edf-008e-4954-b164-1f6a7fbacbc0"
      unitRef="usd">679379000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTctOS0xLTEtMA_f582d6f5-d41e-4d37-b3a6-8b260e6e34ff"
      unitRef="usd">296109000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNTctMTEtMS0xLTY5MTQ_b4993c0a-158b-438a-9752-ab35f91c1120"
      unitRef="usd">106237000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:InterestPaidNet
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNjAtNy0xLTEtMA_55734e9a-95ef-4edc-9176-68710d48346d"
      unitRef="usd">1875000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNjAtOS0xLTEtMA_be1e1002-6769-4a45-90e1-e4ab23e61f5c"
      unitRef="usd">2689000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNjAtMTEtMS0xLTA_1ab6b55b-e715-439a-8090-f59895850078"
      unitRef="usd">6343000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaid
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNjEtNy0xLTEtMA_cb84b497-aa14-4bdf-8011-66ac71e0dfbc"
      unitRef="usd">3452000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNjEtOS0xLTEtMA_9a6cdbe9-29d0-4e02-8026-23a10451b9e0"
      unitRef="usd">1755000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNjEtMTEtMS0xLTA_fa1b6045-ce8d-495b-9cf1-ef78686959cd"
      unitRef="usd">775000</us-gaap:IncomeTaxesPaid>
    <us-gaap:StockIssued1
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNjQtNy0xLTEtMA_22f662b6-8702-4718-96c8-4e49d24c8d71"
      unitRef="usd">0</us-gaap:StockIssued1>
    <us-gaap:StockIssued1
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNjQtOS0xLTEtMA_ee6bee9f-0465-4008-a35d-1c574d7be68e"
      unitRef="usd">0</us-gaap:StockIssued1>
    <us-gaap:StockIssued1
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNjQtMTEtMS0xLTA_374d58ba-4ca9-4dce-9862-1514c69ac301"
      unitRef="usd">19219000</us-gaap:StockIssued1>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNjctNy0xLTEtMA_0a1b20df-7f8a-4a78-80e7-18bd1da7fccf"
      unitRef="usd">3630000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNjctOS0xLTEtMA_b90d9084-84a9-44ed-805c-2f9f2b30a327"
      unitRef="usd">672000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNjctMTEtMS0xLTA_6d75ecd4-b823-49b7-bc98-07813bde923b"
      unitRef="usd">895000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <enph:AccruedInterestPayableUponExchangeOfConvertibleNotes
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNzAtNy0xLTEtMA_94e9e2ee-e0bd-4742-9e90-8ea7521aea73"
      unitRef="usd">0</enph:AccruedInterestPayableUponExchangeOfConvertibleNotes>
    <enph:AccruedInterestPayableUponExchangeOfConvertibleNotes
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNzAtOS0xLTEtMA_f3b06484-3044-4cee-b277-7ec475ad174b"
      unitRef="usd">833000</enph:AccruedInterestPayableUponExchangeOfConvertibleNotes>
    <enph:AccruedInterestPayableUponExchangeOfConvertibleNotes
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl81OC9mcmFnOjg0NmJmNmQyYzM3MjQyZWY5NGJhMTVjNjdmNTczZTZmL3RhYmxlOjViNGFkZTU1YzQ2MzQxNzNiOTIxNzM0MWFmN2I1ZTIxL3RhYmxlcmFuZ2U6NWI0YWRlNTVjNDYzNDE3M2I5MjE3MzQxYWY3YjVlMjFfNzAtMTEtMS0xLTA_26178d72-15e6-4728-822a-163723b7c18b"
      unitRef="usd">0</enph:AccruedInterestPayableUponExchangeOfConvertibleNotes>
    <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl82NC9mcmFnOjczZTJjODUzYjFlZDQzNzk5MzI2YmZmMzRiOWYyZGJjL3RleHRyZWdpb246NzNlMmM4NTNiMWVkNDM3OTkzMjZiZmYzNGI5ZjJkYmNfNDU5NQ_d41d9f26-ba1a-4e24-a369-24142509b72f">DESCRIPTION OF BUSINESS AND BASIS OF PRESENTATION &lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Description of Business&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Enphase Energy, Inc. (the &#x201c;Company&#x201d;) is a global energy technology company. The Company delivers smart, easy-to-use solutions that manage solar generation, storage and communication on one single platform. The Company revolutionized the solar industry with its microinverter technology and produces a fully integrated solar-plus-storage solution.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Basis of Presentation and Consolidation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The accompanying consolidated financial statements are presented in accordance with accounting principles generally accepted in the United States (&#x201c;U.S.&#x201d;), or GAAP. The consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries. All intercompany balances and transactions have been eliminated in consolidation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;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:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of income and expenses during the reporting period. Significant estimates and assumptions reflected in the financial statements include revenue recognition, allowance for doubtful accounts, stock-based compensation, inventory valuation, accrued warranty obligations, fair value of debt derivatives and convertible notes, fair value of acquired intangible assets and goodwill, useful lives of acquired intangible assets and property and equipment, incremental borrowing rate for right-of-use assets and lease liability, probable loss recovery of tariff refunds, legal contingencies, and tax valuation allowance. These estimates are based on information available as of the date of the financial statements; therefore, actual results could differ materially from management&#x2019;s estimates using different assumptions or under different conditions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The worldwide spread of the COVID-19 virus has resulted in a global slowdown of economic activity which decreased demand for a broad variety of goods and services, including from our customers, while also disrupting sales channels and marketing activities for an unknown period of time and may continue to create significant uncertainty in future operational and financial performance. The Company expects this to have negative impact on its sales and its results of operations. In preparing the Company&#x2019;s consolidated financial statements in accordance with GAAP, the Company is required to make estimates, assumptions and judgments that affect the amounts reported in its financial statements and the accompanying disclosures. Estimates and assumptions about future events and their effects cannot be determined with certainty and therefore require the exercise of judgment. As of the date of issuance of these financial&#160;statements, the Company is not aware of any specific event or circumstance that would require the Company to update its estimates, judgments or revise the carrying value of its assets or liabilities. These estimates may change, as new events occur and additional information is obtained, and are recognized in the consolidated financial statements as soon as they become known. Actual results could differ from those estimates and any such differences may be material to the Company&#x2019;s financial statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl82NC9mcmFnOjczZTJjODUzYjFlZDQzNzk5MzI2YmZmMzRiOWYyZGJjL3RleHRyZWdpb246NzNlMmM4NTNiMWVkNDM3OTkzMjZiZmYzNGI5ZjJkYmNfNDU5MQ_55ae5ada-bf39-44cd-bab5-2d6ee4de2b16">&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Basis of Presentation and Consolidation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The accompanying consolidated financial statements are presented in accordance with accounting principles generally accepted in the United States (&#x201c;U.S.&#x201d;), or GAAP. The consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries. All intercompany balances and transactions have been eliminated in consolidation.&lt;/span&gt;&lt;/div&gt;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl82NC9mcmFnOjczZTJjODUzYjFlZDQzNzk5MzI2YmZmMzRiOWYyZGJjL3RleHRyZWdpb246NzNlMmM4NTNiMWVkNDM3OTkzMjZiZmYzNGI5ZjJkYmNfNDU5OA_2cd4cf8b-0d95-4752-88a0-7c2ce0b1d98f">&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;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:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of income and expenses during the reporting period. Significant estimates and assumptions reflected in the financial statements include revenue recognition, allowance for doubtful accounts, stock-based compensation, inventory valuation, accrued warranty obligations, fair value of debt derivatives and convertible notes, fair value of acquired intangible assets and goodwill, useful lives of acquired intangible assets and property and equipment, incremental borrowing rate for right-of-use assets and lease liability, probable loss recovery of tariff refunds, legal contingencies, and tax valuation allowance. These estimates are based on information available as of the date of the financial statements; therefore, actual results could differ materially from management&#x2019;s estimates using different assumptions or under different conditions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The worldwide spread of the COVID-19 virus has resulted in a global slowdown of economic activity which decreased demand for a broad variety of goods and services, including from our customers, while also disrupting sales channels and marketing activities for an unknown period of time and may continue to create significant uncertainty in future operational and financial performance. The Company expects this to have negative impact on its sales and its results of operations. In preparing the Company&#x2019;s consolidated financial statements in accordance with GAAP, the Company is required to make estimates, assumptions and judgments that affect the amounts reported in its financial statements and the accompanying disclosures. Estimates and assumptions about future events and their effects cannot be determined with certainty and therefore require the exercise of judgment. As of the date of issuance of these financial&#160;statements, the Company is not aware of any specific event or circumstance that would require the Company to update its estimates, judgments or revise the carrying value of its assets or liabilities. These estimates may change, as new events occur and additional information is obtained, and are recognized in the consolidated financial statements as soon as they become known. Actual results could differ from those estimates and any such differences may be material to the Company&#x2019;s financial statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:UseOfEstimates>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgzNA_434ea832-ff9e-4efa-a2bb-ffcebe16cdc9">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES&lt;div style="margin-bottom:6pt;margin-top:9pt;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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company generates revenue from sales of its solutions, which include microinverter units and related accessories, an Envoy communications gateway, the cloud-based Enlighten monitoring service, and storage solutions to distributors, large installers, original equipment manufacturers (&#x201c;OEMs&#x201d;) and strategic partners.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On January&#160;1, 2018, the Company adopted Accounting Standards Codification (&#x201c;ASC&#x201d;) No.&#160;606, &#x201c;Revenue Recognition&#x201d; (&#x201c;ASC&#160;606&#x201d; or &#x201c;Topic&#160;606&#x201d;) and applied the modified retrospective method to all contracts that were not completed as of January&#160;1, 2018. The most significant impacts upon adoption of Topic&#160;606 were how the Company accounts for revenue related to its Envoy&#x2122; communications device and related Enphase Enlighten Software&#x2122;, or Enlighten, service and the timing of when certain sales incentives are recognized. The full consideration for these products represents a single performance obligation and is deferred and recognized over the estimated service period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenues are recognized when control of the promised goods or services are transferred to the Company&#x2019;s customers in an amount that reflects the consideration that is expected to be received in exchange for those goods or services. The Company generates all of its revenues from contracts with its customers. A description of principal activities from which the Company generates revenues follows. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Products Delivered at a Point in Time. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company sells its products to customers in accordance with the terms of the related customer contracts. The Company generates revenues from sales of its solutions, which include microinverter units and related accessories, an Envoy communications gateway and Enlighten service, communications accessories and storage solutions to distributors, large installers, OEMs and strategic partners. Microinverter units, microinverter accessories, and storage solutions are delivered to customers at a point in time, and the Company recognizes revenue for these products when the Company transfers control of the product to the customer, which is generally upon shipment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Products Delivered Over Time. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The sale of an Envoy communications gateway includes the Company&#x2019;s Enlighten cloud-based monitoring service. The full consideration for these products represents a single performance obligation and is deferred at the sale date and recognized over the estimated service period of 6 years. The Company also sells certain communication accessories that contain a service performance obligation to be delivered over time. The revenue from these products is recognized over the related service period, which is typically 5 or 12 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;When the Company sells a product with more than one performance obligation, such as the IQ Combiner which includes both hardware and Envoy, the total consideration is allocated to these performance obligations based on their relative standalone selling prices. The Company previously sold its Envoy communications device to certain customers under a long-term financing arrangement. Under this financing arrangement, the Company nets the unbilled receivables against deferred revenue.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company records certain contra revenue promotions as variable consideration and recognizes these promotions at the time the related revenue is recorded.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company records upfront contract acquisition costs, such as sales commissions, to be capitalized and amortized over the estimated life of the asset. For contracts that have a duration of less than one year, the Company follows the Topic 606 practical expedient and expenses these costs when incurred. Commissions related to the Company&#x2019;s sale of monitoring hardware and service are capitalized and amortized over the period of the associated revenue, which is 6 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;See Note&#160;3. &#x201c;Revenue Recognition,&#x201d; for additional information related to revenue recognition.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Cost of Revenues&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company includes the following in cost of revenues: product costs, warranty, manufacturing personnel and logistics costs, freight costs, inventory write-downs, hosting services costs related to the Company&#x2019;s Enlighten service offering, and depreciation and amortization of manufacturing test equipment. A description of principal activities from which the Company recognizes cost of revenue is as follows. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;  &#x2022;   Products Delivered at a Point in Time. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cost of revenue from these products is recognized when the Company transfers control of the product to the customer, which is generally upon shipment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Products Delivered Over Time. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cost of revenue from these products is recognized over the related service period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company considers all highly liquid investments, such as certificates of deposit and money market instruments with maturities of three months or less at the time of acquisition to be cash equivalents. For all periods presented, its cash balances consist of amounts held in non-interest-bearing and interest-bearing deposits and money market accounts.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restricted cash represents cash held as certificate of deposit collateralized under a letter of credit issued to a customer. The letter of credit was required as a performance security in a face amount equal to the aggregate purchase price of the executed sales agreement. The letter of credit was issued per the terms of the executed sales agreement with a customer for safe harbor prepayment and the Company had collateralized a certificate of deposit under this letter of credit in an amount of $44.7 million, which was reflected as restricted cash on the Company&#x2019;s consolidated balance sheet as of December&#160;31, 2019. As of December&#160;31, 2020, the Company does not have restricted cash balance.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 a financial instrument is the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. The carrying amounts of the Company&#x2019;s cash, cash equivalents and restricted cash, accounts receivable, accounts payable and accrued liabilities approximate fair value because of the short maturity of those instruments. Equity investments with readily determinable fair value are carried at fair value based on quoted market prices or estimated based on market conditions and risks existing at each balance sheet date. Equity investments without readily determinable fair value are measured at cost less impairment, and are adjusted for observable price changes in orderly transactions for an identical or similar investment of the same issuer.&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-style:italic;font-weight:700;line-height:120%"&gt;Convertible Note Derivatives&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In March 2020, the Company issued $320&#160;million aggregate principal amount of 0.25% convertible notes due 2025. Concurrently with the issuance of Notes due 2025, the Company entered into privately-negotiated convertible note hedge and warrant transactions which in combination are intended to reduce the potential dilution from the conversion of the Notes due 2025. The Company could not elect to issue the shares of common stock upon settlement of Notes due 2025 or convertible note hedge or warrant transactions due to insufficient authorized share capital. As a result, the embedded conversion option and warrants were accounted for as a derivative liabilities and convertible notes hedge as derivative asset and a gain (or loss) was reported in other expense, net in the consolidated statement of operations to the extent the valuation changed from the date of issuance of Notes due 2025. On May 20, 2020, at the Company&#x2019;s annual meeting of stockholders, the stockholders approved an amendment to its certificate of incorporation to increase the number of authorized shares of the Company&#x2019;s common stock. As a result, the Company is now be able to settle the Notes due 2025, convertible notes hedge and warrants through payment or delivery, as the case may be, of cash, shares of its common stock or a combination thereof, at the Company&#x2019;s election. Accordingly, on May 20, 2020, the embedded derivative liability, convertible notes hedge and warrants liability were remeasured at a fair value and were then reclassified to additional paid-in-capital in the condensed consolidated balance sheet in the second quarter of 2020 and are no longer remeasured as long as they continue to meet the conditions for equity classification. As of December 31, 2020, the Company does not have any convertible note derivatives. See Note 11. &#x201c;Debt&#x201d; for additional information related to these transactions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Accounts Receivables and Contract Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company receives payments from customers based upon contractual billing schedules. Accounts receivable are recorded when the right to consideration becomes unconditional. Contract assets include deferred product costs and commissions associated with the deferred revenue and will be amortized along with the associated revenue.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Allowance for Doubtful Accounts&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company maintains allowances for doubtful accounts for uncollectible accounts receivable. Management estimates anticipated credit losses from doubtful accounts based on days past due, customer specific experience, collection history, the financial health of customers including from the impacts of the COVID-19 pandemic, among other factors. Accounts receivable are recorded net of allowance for doubtful accounts. The following table sets forth activities in the allowance for doubtful accounts for the periods indicated.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;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:59.510%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.526%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.526%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.548%"/&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:8pt;font-weight:700;line-height:100%"&gt;December&#160;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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Balance, at beginning of year&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;564&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,138&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,378&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net charges to 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:9pt;font-weight:400;line-height:100%"&gt;425&#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:9pt;font-weight:400;line-height:100%"&gt;217&#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:9pt;font-weight:400;line-height:100%"&gt;711&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Write-offs, net of recoveries&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:9pt;font-weight:400;line-height:100%"&gt;(527)&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:9pt;font-weight:400;line-height:100%"&gt;(1,791)&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:9pt;font-weight:400;line-height:100%"&gt;(951)&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:9pt;font-weight:400;line-height:100%"&gt;Balance, at end of year&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;462&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;564&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;2,138&#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-bottom:6pt;margin-top:9pt;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;Inventory&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventory is valued at the lower of cost or market. Market is current replacement cost (by purchase or by reproduction, dependent on the type of inventory). In cases where market exceeds net realizable value (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;i.e.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;,&#160;estimated selling price less reasonably predictable costs of completion and disposal), inventories are stated at net realizable value. Market is not considered to be less than net realizable value reduced by an allowance for an approximately normal profit margin. The Company determines cost on a first-in first-out basis. Management assesses the valuation on a quarterly basis and writes down the value for any excess and obsolete inventory based upon expected demand, anticipated sales price, effect of new product introductions, product obsolescence, customer concentrations, product merchantability and other factors. Inventory write-downs are equal to the difference between the cost of inventories and market.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Long-Lived Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment are stated at cost less accumulated depreciation. Cost includes amounts paid to acquire or construct the asset as well as any expenditure that substantially adds to the value of or significantly extends the useful life of an existing asset. Repair and maintenance costs are expensed as incurred. Depreciation and amortization are computed using the straight-line method over the estimated useful lives of the assets, which range from 3 to 10 years. Leasehold improvements are amortized over the shorter of the lease term or expected useful life of the improvements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Internal-use software, whether purchased or developed, is capitalized at cost and amortized on a straight-line basis over its estimated useful life. Costs associated with internally developed software are expensed until the point at which the project has reached the development stage. Subsequent additions, modifications or upgrades to internal-use software are capitalized only to the extent that they provide additional functionality. Software maintenance and training costs are expensed in the period in which they are incurred. The capitalization of internal-use software requires judgment in determining when a project has reached the development stage and the period over which the Company expects to benefit from the use of that software.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company capitalizes implementation costs related to cloud computing (i.e. hosting) arrangements that are accounted for as a service contract that meets the accounting requirement for capitalization as such implementation costs were incurred to develop or utilize internal-use software hosted by a third party vendor. The capitalized implementation costs are recorded as part of &#x201c;Other assets&#x201d; on the consolidated balance sheet and is amortized over the length of the service contract.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property, plant and equipment, including internal-use software, and capitalized implementation costs related to cloud computing arrangements, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset (asset group) may not be recoverable. An impairment loss would be recognized when the carrying amount of an asset exceeds the estimated undiscounted future cash flows expected to result from the use of the asset and its eventual disposition. The amount of the impairment loss to be recorded is calculated by the excess of the asset&#x2019;s carrying value over its fair value. Fair value is generally determined using a discounted cash flow analysis. The Company recorded asset impairment charges for specific assets that were no longer in use of approximately zero, $1.1 million and $1.6&#160;million for the years ended 2020, 2019 and 2018, respectively. There were no events or changes in circumstances that may indicate the carrying amount of remaining assets is not recoverable.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Business Combinations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:4.5pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assets acquired and liabilities assumed as part of a business acquisition are generally recorded at their fair value at the date of acquisition. The excess of purchase price over the fair value of assets acquired and liabilities assumed is recorded as goodwill. Determining fair value of identifiable assets, particularly intangibles, and liabilities acquired also requires the Company to make estimates, which are based on all available information and in some cases assumptions with respect to the timing and amount of future revenues and expenses associated with an asset. Accounting for business acquisitions requires the Company to make judgments as to whether a purchase transaction is a multiple element contract, meaning that it includes other transaction components. This judgment and determination affect the amount of consideration paid that is allocable to assets and liabilities acquired in the business purchase transaction.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill results from the purchase consideration paid in excess of the fair value of the net assets recorded in connection with a business acquisition. Goodwill is not amortized but is assessed for potential impairment at least annually during the fourth quarter of each fiscal year or between annual tests if an event occurs or circumstances change that would indicate the carrying amount may be impaired. Goodwill is tested at the reporting unit level, which the Company has determined to be the same as the entity as a whole (entity level). The Company first performs qualitative assessment to determine whether it is more likely than not that the fair value of our reporting unit is less than its carrying value. If, after assessing the qualitative factors, we determine that it is more likely than not that the fair value of our reporting unit is less than its carrying value, an impairment analysis will be performed.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Qualitative factors include industry and market consideration, overall financial performance, share price trends and market capitalization and Company-specific events. The Company determined, after performing a qualitative review of its reporting unit, that it is more likely than not that the fair value of our reporting unit exceeds its carrying value. Accordingly, there was no indication of impairment in the years ended 2020, 2019 and 2018 and no quantitative goodwill impairment test was performed.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Intangible Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Intangible assets include patents and other purchased intangible assets. Intangible assets with finite lives are amortized on a straight-line basis, with estimated useful lives ranging from 3 to 9 years. Indefinite-lived intangible assets are tested for impairment annually and are also tested for impairment between annual tests if an event occurs or circumstances change that would indicate that the carrying amount may be impaired. Intangible assets with finite lives are tested for impairment whenever events or circumstances indicate that the carrying amount of an asset (asset group) may not be recoverable. An impairment loss is recognized when the carrying amount of an asset exceeds the estimated undiscounted cash flows used in determining the fair value of the asset. The amount of the impairment loss to be recorded is calculated by the excess of the asset&#x2019;s carrying value over its fair value. Fair value is generally determined using a discounted cash flow analysis. There was no impairment of intangible assets in any of the years presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Contract Liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract liabilities are recorded as deferred revenue on the accompanying consolidated balance sheets and include payments received in advance of performance obligations under the contract and are realized when the associated revenue is recognized under the contract.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Warranty Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Microinverters and Other Products Sold Through December 31, 2013&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 warranty accrual provides for the replacement of microinverter units or other products that fail during the product&#x2019;s warranty term (typically 15 years for first and second generation microinverters and up to 25 years for subsequent generation microinverters). On a quarterly basis, the Company employs a consistent, systematic and rational methodology to assess the adequacy of its warranty liability. This assessment includes updating all key estimates and assumptions for each generation of product, based on historical results, trends and the most current data available as of the filing date. The key estimates and assumptions used in the warranty liability are thoroughly reviewed by management on a quarterly basis. The key estimates used by the Company to estimate its warranty liability are: (1)&#160;the number of units expected to fail over time (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;i.e.,&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;failure rate); (2)&#160;the number of failed units expected to result in warranty claims over time (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;i.e.,&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;claim rate); and (3)&#160;the per unit cost of replacement units, including outbound shipping and limited labor costs, expected to be incurred to replace failed units over time (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;i.e.,&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;replacement cost).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Estimated Failure Rates &#x2014; &lt;/span&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 Quality and Reliability department has primary responsibility to determine the estimated failure rates for each generation of microinverter. To establish initial failure rate estimates for each generation of microinverter, the Company&#x2019;s quality engineers use a combination of industry standard Mean Time Between Failure (&#x201c;MTBF&#x201d;) estimates for individual components contained in its microinverters, third party data collected on similar equipment deployed in outdoor environments similar to those in which the Company&#x2019;s microinverters are installed, and rigorous long term reliability and accelerated life cycle testing which simulates the service life of the microinverter in a short period of time. As units are deployed into operating environments, the Company continues to monitor product performance through its Enlighten monitoring platform. It typically takes &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTU0MzI_d4d9ab4a-ef9a-4f84-936b-40ee9c2867e7"&gt;three&lt;/span&gt; to nine months between the date of sale and date of end-user installation. Consequently, the Company&#x2019;s ability to monitor actual failures of units sold similarly lags by &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTU1OTY_d4d9ab4a-ef9a-4f84-936b-40ee9c2867e7"&gt;three&lt;/span&gt; to nine months. When a microinverter fails and is returned, the Company performs diagnostic root cause failure analysis to understand and isolate the underlying mechanism(s) causing the failure. The Company then uses the results of this analysis (combined with the actual, cumulative performance data collected on those units prior to failure through Enlighten) to draw conclusions with respect to how or if the identified failure mechanism(s) will impact the remaining units deployed in the installed base.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Estimated Claim Rates &#x2014; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Warranty claim rate estimates are based upon observed historical trends and assumptions with respect to expected customer behavior over the warranty period. As the vast majority of the Company&#x2019;s microinverters have been sold to end users for residential applications, the Company believes that warranty claim rates will be affected by changes over time in residential home ownership because the Company expects that subsequent homeowners are less likely to file claims than the homeowners who originally purchase the microinverters.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Estimated Replacement Costs &#x2014; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Three factors are considered in the Company&#x2019;s analysis of estimated replacement cost: (1)&#160;the estimated cost of replacement microinverters; (2)&#160;the estimated cost to ship replacement microinverters to end users; and (3)&#160;the estimated labor reimbursement expected to be paid to third party installers performing replacement services for the end user. Because the Company&#x2019;s warranty provides for the replacement of defective microinverters over long periods of time (between 15 and 25 years, depending on the generation of product purchased), the estimated per unit cost of current and future product generations is considered in the estimated replacement cost. Estimated costs to ship replacement units are based on observable, market-based shipping costs paid by the Company to third party freight carriers. The Company has a separate program that allows third-party installers to claim fixed-dollar reimbursements for labor costs they incur to replace failed microinverter units for a limited time from the date of original installation. Included in the Company&#x2019;s estimated replacement cost is an analysis of the number of fixed-dollar labor reimbursements expected to be claimed by third party installers over the limited offering period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In addition to the key estimates noted above, the Company also compares actual warranty results to expected results and evaluates any significant differences. Management may make additional adjustments to the warranty provision based on performance trends or other qualitative factors. If actual failure rates, claim rates, or replacement costs differ from the Company&#x2019;s estimates in future periods, changes to these estimates may be required, resulting in increases or decreases in the Company&#x2019;s warranty obligations. Such increases or decreases could be material.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Fair Value Option for Microinverters and Other Products Sold Since January 1, 2014&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 warranty obligations related to microinverters sold since January&#160;1, 2014 provide the Company the right, but not the requirement, to assign its warranty obligations to a third-party. Under ASC&#160;825, &#x201c;Financial Instruments&#x201d; (also referred to as &#x201c;fair value option&#x201d;), an entity may choose to elect the fair value option for such warranties at the time it first recognizes the eligible item. The Company made an irrevocable election to account for all eligible warranty obligations associated with microinverters sold since January&#160;1, 2014 at fair value. This election was made to reflect the underlying economics of the time value of money for an obligation that will be settled over an extended period of up to 25 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 value of warranty obligations by calculating the warranty obligations in the same manner as for sales prior to January&#160;1, 2014 and applying an expected present value technique to that result. The expected present value technique, an income approach, converts future amounts into a single current discounted amount. In addition to the key estimates of failure rates, claim rates and replacement costs, the Company used certain inputs that are unobservable and significant to the overall fair value measurement. Such additional assumptions included compensation comprised of a profit element and risk premium required of a market participant to assume the obligation and a discount rate based on the Company&#x2019;s credit-adjusted risk-free rate. See Note&#160;9. &#x201c;Fair Value Measurements,&#x201d; for additional information.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Warranty obligations initially recorded at fair value at the time of sale will be subsequently re-measured to fair value at each reporting date. In addition, the fair value of the liability will be accreted over the corresponding term of the warranty of up to 25 years using the interest method.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Warranty for Other Products&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company offers a 5&#x2011;year warranty for its Envoy communications gateway and a 10&#x2011;year warranty on its AC Battery storage solution. The warranties provide the Company with the right, but not the obligation, to assign its warranty obligations to a third-party. As such, warranties for Envoy and AC Battery storage solution products are accounted for under the fair value method of accounting.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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:174%"&gt;Commitments and Contingencies&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 is subject to loss contingencies and loss recoveries, such as legal proceedings and claims arising out of its business as well as tariff refunds. An accrual for a loss contingency or loss recovery is recognized when it is probable and the amount of loss or recovery can be reasonably estimated.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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 Costs &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company expenses research and development costs as incurred. Research and development expense consists primarily of product development personnel costs, including salaries and benefits, stock-based compensation, other professional costs and allocated facilities costs.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Share-based payments are required to be recognized in the Company&#x2019;s consolidated statements of operations based on their fair values and the estimated number of shares expected to vest. The Company measures stock-based compensation expense for all share-based payment awards, including stock options made to employees and directors, based on the estimated fair values on the date of the grant. The fair value of stock options granted is estimated using the Black-Scholes option valuation model. The fair value of restricted stock units granted is determined based on the price of the Company&#x2019;s common stock on the date of grant. The fair value of non-market&#x2011;based performance stock units granted is determined based on the date of grant or when achievement of performance is probable. The fair value of market&#x2011;based performance stock units granted is determined using a Monte&#x2011;Carlo model based on the date of grant or when achievement of performance is probable.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation for stock options and restricted stock units (&#x201c;RSUs&#x201d;) is recognized on a straight-line basis over the requisite service period. Stock-based compensation for performance stock units (&#x201c;PSUs&#x201d;) without market conditions is recognized when the performance condition is probable of being achieved, and then on a graded basis over the requisite service period. Stock-based compensation for PSUs with market conditions is recognized on a straight-line basis over the requisite service period. Additionally, the Company estimates its forfeiture rate annually based on historical experience and revise the estimates of forfeiture in subsequent periods if actual forfeitures differ from those estimates.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company determines if an arrangement is or contains a lease at inception. Operating lease assets represent the Company&#x2019;s right to use an underlying asset for the lease term and lease liabilities represent the Company&#x2019;s obligation to make lease payments over the lease term.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Operating lease assets and liabilities are recognized based on the present value of the remaining lease payments discounted using the Company&#x2019;s incremental borrowing rate. Operating lease assets also include initial direct costs incurred and prepaid lease payments, minus any lease incentives. The Company&#x2019;s lease terms include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. Lease expense is recognized on a straight-line basis over the lease term.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company combines the lease and non-lease components in determining the operating lease assets and liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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 Translation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company and most of its subsidiaries use their respective local currency as their functional currency. Accordingly, foreign currency assets and liabilities are translated using exchange rates in effect at the end of the period. Aggregate exchange gains and losses arising from the translation of foreign assets and liabilities are included in accumulated other comprehensive income (loss) in stockholders' equity. Foreign subsidiaries that use the U.S. dollar as their functional currency remeasure monetary assets and liabilities using exchange rates in effect at the end of the period. In addition, transactions that are denominated in non-functional currency are remeasured using exchange rates in effect at the end of the period. Exchange gains and losses arising from the remeasurement of monetary assets and liabilities are included in other income (expense), net in the consolidated statements of operations. Non-monetary assets and liabilities are carried at their historical values.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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 Income (Loss)&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Comprehensive income (loss) consists of two components, net income (loss) and other comprehensive income (loss). Other comprehensive income (loss) refers to gains and losses that are recorded as an element of stockholders&#x2019; equity but are excluded from net income (loss). The Company&#x2019;s other comprehensive income (loss) consists of foreign currency translation adjustments for all periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company records income taxes using the asset and liability method, which requires the recognition of deferred tax assets and liabilities for the expected tax consequences of temporary differences between the tax bases of assets and liabilities for financial reporting purposes and amounts recognized for income tax purposes. In estimating future tax consequences, generally all expected future events other than enactments or changes in the tax law or rates are considered. Valuation allowances are provided when necessary to reduce deferred tax assets to the amount expected to be realized.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company assesses the realizability of the deferred tax assets to determine release of valuation allowance as necessary. In the event the Company determines that it is more likely than not that we would be able to realize deferred tax assets in the future in excess of our net recorded amount, an adjustment to the valuation allowance for the deferred tax asset would increase income in the period such determination was made. Likewise, should it be determined that additional amounts of the net deferred tax asset will not be realized in the future, an adjustment to increase the deferred tax asset valuation allowance will be charged to income in the period such determination is made.&lt;/span&gt;&lt;/div&gt;The Company operates in various tax jurisdictions and is subject to audit by various tax authorities. The Company follows accounting for uncertainty in income taxes which requires that the tax effects of a position be recognized only if it is &#x201c;more likely than not&#x201d; to be sustained based solely on its technical merits as of the reporting date. The Company considers many factors when evaluating and estimating its tax positions and tax benefits, which may require periodic adjustments and which may not accurately anticipate actual outcomes.&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Recently Adopted Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In August 2018, the FASB issued ASU&#160;2018-15, &#x201c;Customer&#x2019;s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That Is a Service Contract,&#x201d; to reduce diversity in practice in accounting for the costs of implementing cloud computing arrangements that are service contracts. ASU&#160;2018-15 allows entities to apply the guidance in the ASC&#160;350-40, &#x201c;Intangibles&#x2013;Goodwill and Other&#x2013;Internal-Use Software,&#x201d; to determine which implementation costs are eligible to be capitalized as assets in a cloud computing arrangement that is considered a service contract. ASU&#160;2018-15 is effective for fiscal years beginning after December&#160;15, 2019, and interim periods within those fiscal years. Early adoption is permitted, including adoption in any interim period. Entities have the option to apply the guidance prospectively to all implementation costs incurred after the date of adoption or retrospectively and are required to make certain disclosures in the interim and annual period of adoption. The Company adopted the new standard effective January 1, 2020 on a prospective basis and the adoption of this guidance did not have a material impact on its consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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, &#x201c;Financial Instruments-Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments,&#x201d; which requires the measurement and recognition of expected credit losses for financial assets held at amortized cost. ASU 2016-13 replaces the existing incurred loss impairment model with a current expected credit loss (CECL) model which will result in earlier recognition of credit losses.&#160;On January 1, 2020, the Company on a prospective basis adopted Topic 326, the measurement of expected credit losses under the CECL model is applicable to financial assets measured at amortized cost, including accounts receivable. The adoption of this guidance did not have a material impact on the Company&#x2019;s consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Recently Issued Accounting Pronouncements Not Yet Effective &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In August 2020, the FASB issued Account Standard Update (&#x201c;ASU&#x201d;) 2020-06, &#x201c;Debt - Debt with Conversion and Other Options (subtopic 470-20) and Derivatives and Hedging - Contracts in Entity&#x2019;s Own Equity (subtopic 815-40),&#x201d; which reduces the number of accounting models in ASC 470-20 that require separate accounting for embedded conversion features. As a result, a convertible debt instrument will be accounted for as a single liability measured at its amortized cost as long as no other features require bifurcation and recognition as derivatives. By removing those separation models, the effective interest rate of convertible debt instruments will be closer to the coupon interest rate. Further, the diluted net income per share calculation for convertible instruments will require the Company to use the if-converted method. The treasury stock method should no longer be used to calculate diluted net income per share for convertible instruments. The amendment will be effective for the Company with annual periods beginning January 1, 2022 and early adoption is permitted. The Company is evaluating the accounting, transition and disclosure requirements of the standard.&lt;/span&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgwOQ_10527728-ef0e-41c6-bece-8b3a844b4b5f">&lt;div style="margin-bottom:6pt;margin-top:9pt;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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company generates revenue from sales of its solutions, which include microinverter units and related accessories, an Envoy communications gateway, the cloud-based Enlighten monitoring service, and storage solutions to distributors, large installers, original equipment manufacturers (&#x201c;OEMs&#x201d;) and strategic partners.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On January&#160;1, 2018, the Company adopted Accounting Standards Codification (&#x201c;ASC&#x201d;) No.&#160;606, &#x201c;Revenue Recognition&#x201d; (&#x201c;ASC&#160;606&#x201d; or &#x201c;Topic&#160;606&#x201d;) and applied the modified retrospective method to all contracts that were not completed as of January&#160;1, 2018. The most significant impacts upon adoption of Topic&#160;606 were how the Company accounts for revenue related to its Envoy&#x2122; communications device and related Enphase Enlighten Software&#x2122;, or Enlighten, service and the timing of when certain sales incentives are recognized. The full consideration for these products represents a single performance obligation and is deferred and recognized over the estimated service period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenues are recognized when control of the promised goods or services are transferred to the Company&#x2019;s customers in an amount that reflects the consideration that is expected to be received in exchange for those goods or services. The Company generates all of its revenues from contracts with its customers. A description of principal activities from which the Company generates revenues follows. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Products Delivered at a Point in Time. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company sells its products to customers in accordance with the terms of the related customer contracts. The Company generates revenues from sales of its solutions, which include microinverter units and related accessories, an Envoy communications gateway and Enlighten service, communications accessories and storage solutions to distributors, large installers, OEMs and strategic partners. Microinverter units, microinverter accessories, and storage solutions are delivered to customers at a point in time, and the Company recognizes revenue for these products when the Company transfers control of the product to the customer, which is generally upon shipment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Products Delivered Over Time. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The sale of an Envoy communications gateway includes the Company&#x2019;s Enlighten cloud-based monitoring service. The full consideration for these products represents a single performance obligation and is deferred at the sale date and recognized over the estimated service period of 6 years. The Company also sells certain communication accessories that contain a service performance obligation to be delivered over time. The revenue from these products is recognized over the related service period, which is typically 5 or 12 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;When the Company sells a product with more than one performance obligation, such as the IQ Combiner which includes both hardware and Envoy, the total consideration is allocated to these performance obligations based on their relative standalone selling prices. The Company previously sold its Envoy communications device to certain customers under a long-term financing arrangement. Under this financing arrangement, the Company nets the unbilled receivables against deferred revenue.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company records certain contra revenue promotions as variable consideration and recognizes these promotions at the time the related revenue is recorded.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company records upfront contract acquisition costs, such as sales commissions, to be capitalized and amortized over the estimated life of the asset. For contracts that have a duration of less than one year, the Company follows the Topic 606 practical expedient and expenses these costs when incurred. Commissions related to the Company&#x2019;s sale of monitoring hardware and service are capitalized and amortized over the period of the associated revenue, which is 6 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;See Note&#160;3. &#x201c;Revenue Recognition,&#x201d; for additional information related to revenue recognition.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Cost of Revenues&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company includes the following in cost of revenues: product costs, warranty, manufacturing personnel and logistics costs, freight costs, inventory write-downs, hosting services costs related to the Company&#x2019;s Enlighten service offering, and depreciation and amortization of manufacturing test equipment. A description of principal activities from which the Company recognizes cost of revenue is as follows. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;  &#x2022;   Products Delivered at a Point in Time. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cost of revenue from these products is recognized when the Company transfers control of the product to the customer, which is generally upon shipment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Products Delivered Over Time. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cost of revenue from these products is recognized over the related service period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Contract Liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract liabilities are recorded as deferred revenue on the accompanying consolidated balance sheets and include payments received in advance of performance obligations under the contract and are realized when the associated revenue is recognized under the contract.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:CapitalizedContractCostAmortizationPeriod
      contextRef="i739fc3dd830e4196a79093e85666e8de_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMjQ3MQ_231198d0-80b4-4cc8-a38f-4cf2398293e3">P6Y</us-gaap:CapitalizedContractCostAmortizationPeriod>
    <enph:RevenueFromContractWithCustomerServicePeriod
      contextRef="i3fe24bdd86f64699bb4b2d701349ac80_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMjY2MA_b82aa88b-5e2d-4be1-9a0b-0cda786ab1f3">P5Y</enph:RevenueFromContractWithCustomerServicePeriod>
    <enph:RevenueFromContractWithCustomerServicePeriod
      contextRef="i7b39fe94806642daa4d74c4239cf343f_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMjY2Ng_ae32e1dd-6ac1-4879-a024-005dac54ebc2">P12Y</enph:RevenueFromContractWithCustomerServicePeriod>
    <us-gaap:CapitalizedContractCostAmortizationPeriod
      contextRef="i739fc3dd830e4196a79093e85666e8de_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTg2Mg_1ed0abd7-80b4-4a01-8b39-6e56c5f26f58">P6Y</us-gaap:CapitalizedContractCostAmortizationPeriod>
    <us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgxMg_0954ef6c-01d8-4b0f-96f9-840bb145f737">&lt;div style="margin-bottom:6pt;margin-top:9pt;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:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company considers all highly liquid investments, such as certificates of deposit and money market instruments with maturities of three months or less at the time of acquisition to be cash equivalents. For all periods presented, its cash balances consist of amounts held in non-interest-bearing and interest-bearing deposits and money market accounts.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restricted cash represents cash held as certificate of deposit collateralized under a letter of credit issued to a customer. The letter of credit was required as a performance security in a face amount equal to the aggregate purchase price of the executed sales agreement. The letter of credit was issued per the terms of the executed sales agreement with a customer for safe harbor prepayment and the Company had collateralized a certificate of deposit under this letter of credit in an amount of $44.7 million, which was reflected as restricted cash on the Company&#x2019;s consolidated balance sheet as of December&#160;31, 2019. As of December&#160;31, 2020, the Company does not have restricted cash balance.&lt;/span&gt;&lt;/div&gt;</us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy>
    <us-gaap:RestrictedCash
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfNTQ5NzU1ODE2NjU1Nw_f95c6d96-6b17-41b7-a3e9-8354e58cf52d"
      unitRef="usd">44700000</us-gaap:RestrictedCash>
    <us-gaap:RestrictedCash
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfNDk0NzgwMjM4MTQzMA_994a9e0d-0487-4a07-8ad9-ad5edeae3681"
      unitRef="usd">0</us-gaap:RestrictedCash>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgxMw_1d999c52-ee9c-4038-be9c-84b0481d3d8a">&lt;div style="margin-bottom:6pt;margin-top:9pt;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&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 a financial instrument is the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. The carrying amounts of the Company&#x2019;s cash, cash equivalents and restricted cash, accounts receivable, accounts payable and accrued liabilities approximate fair value because of the short maturity of those instruments. Equity investments with readily determinable fair value are carried at fair value based on quoted market prices or estimated based on market conditions and risks existing at each balance sheet date. Equity investments without readily determinable fair value are measured at cost less impairment, and are adjusted for observable price changes in orderly transactions for an identical or similar investment of the same issuer.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i696c400045cb4319b92de20068589dc7_I20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfNDk0NzgwMjM4MTQwNg_0d2eb82a-4a5e-4c75-a2ed-e571c7e1b59f"
      unitRef="usd">320000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i696c400045cb4319b92de20068589dc7_I20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfNDk0NzgwMjM4MTQyMA_ee33590a-2d00-4076-91b1-c2c922e8177a"
      unitRef="number">0.0025</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <enph:AccountsReceivablesAndContractAssetsPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgxNA_017c8eec-da50-4304-847e-66201344ea65">&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Accounts Receivables and Contract Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company receives payments from customers based upon contractual billing schedules. Accounts receivable are recorded when the right to consideration becomes unconditional. Contract assets include deferred product costs and commissions associated with the deferred revenue and will be amortized along with the associated revenue.&lt;/span&gt;&lt;/div&gt;</enph:AccountsReceivablesAndContractAssetsPolicyTextBlock>
    <us-gaap:ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgxNQ_3e4230de-473a-417c-b300-b409ed655537">Allowance for Doubtful AccountsThe Company maintains allowances for doubtful accounts for uncollectible accounts receivable. Management estimates anticipated credit losses from doubtful accounts based on days past due, customer specific experience, collection history, the financial health of customers including from the impacts of the COVID-19 pandemic, among other factors. Accounts receivable are recorded net of allowance for doubtful accounts.</us-gaap:ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy>
    <us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgzNQ_5ba081a1-80c9-43f0-ab94-a0cb48375203">The following table sets forth activities in the allowance for doubtful accounts for the periods indicated.&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:59.510%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.526%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.526%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.548%"/&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:8pt;font-weight:700;line-height:100%"&gt;December&#160;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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Balance, at beginning of year&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;564&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,138&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,378&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net charges to 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:9pt;font-weight:400;line-height:100%"&gt;425&#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:9pt;font-weight:400;line-height:100%"&gt;217&#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:9pt;font-weight:400;line-height:100%"&gt;711&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Write-offs, net of recoveries&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:9pt;font-weight:400;line-height:100%"&gt;(527)&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:9pt;font-weight:400;line-height:100%"&gt;(1,791)&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:9pt;font-weight:400;line-height:100%"&gt;(951)&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:9pt;font-weight:400;line-height:100%"&gt;Balance, at end of year&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;462&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;564&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;2,138&#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;</us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RhYmxlOmJmYWJlOGUzMjFiOTQ5NDdiN2E1MjcxMDllMzJkYWU5L3RhYmxlcmFuZ2U6YmZhYmU4ZTMyMWI5NDk0N2I3YTUyNzEwOWUzMmRhZTlfMy0xLTEtMS0w_c0336bf4-1b6b-4dbc-83e5-87b00fe43284"
      unitRef="usd">564000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RhYmxlOmJmYWJlOGUzMjFiOTQ5NDdiN2E1MjcxMDllMzJkYWU5L3RhYmxlcmFuZ2U6YmZhYmU4ZTMyMWI5NDk0N2I3YTUyNzEwOWUzMmRhZTlfMy0zLTEtMS0w_9732c62c-4a23-491c-957f-56be6e028e34"
      unitRef="usd">2138000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i313ff8cf793547cfaaab91c7ecbea720_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RhYmxlOmJmYWJlOGUzMjFiOTQ5NDdiN2E1MjcxMDllMzJkYWU5L3RhYmxlcmFuZ2U6YmZhYmU4ZTMyMWI5NDk0N2I3YTUyNzEwOWUzMmRhZTlfMy01LTEtMS0w_9a847694-e373-4672-875a-893fd9b79c75"
      unitRef="usd">2378000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RhYmxlOmJmYWJlOGUzMjFiOTQ5NDdiN2E1MjcxMDllMzJkYWU5L3RhYmxlcmFuZ2U6YmZhYmU4ZTMyMWI5NDk0N2I3YTUyNzEwOWUzMmRhZTlfNC0xLTEtMS0w_cb68b10c-a97c-49a9-b370-fe4d52a1f1e9"
      unitRef="usd">425000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RhYmxlOmJmYWJlOGUzMjFiOTQ5NDdiN2E1MjcxMDllMzJkYWU5L3RhYmxlcmFuZ2U6YmZhYmU4ZTMyMWI5NDk0N2I3YTUyNzEwOWUzMmRhZTlfNC0zLTEtMS0w_aac7885f-6b71-42dd-a56f-0414af7b0fd2"
      unitRef="usd">217000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RhYmxlOmJmYWJlOGUzMjFiOTQ5NDdiN2E1MjcxMDllMzJkYWU5L3RhYmxlcmFuZ2U6YmZhYmU4ZTMyMWI5NDk0N2I3YTUyNzEwOWUzMmRhZTlfNC01LTEtMS0w_1ec3dc3f-82f0-4f7b-8e0a-c76e6d4477d3"
      unitRef="usd">711000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RhYmxlOmJmYWJlOGUzMjFiOTQ5NDdiN2E1MjcxMDllMzJkYWU5L3RhYmxlcmFuZ2U6YmZhYmU4ZTMyMWI5NDk0N2I3YTUyNzEwOWUzMmRhZTlfNS0xLTEtMS0w_66848b1c-037a-4205-b099-7eb09779b16d"
      unitRef="usd">527000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RhYmxlOmJmYWJlOGUzMjFiOTQ5NDdiN2E1MjcxMDllMzJkYWU5L3RhYmxlcmFuZ2U6YmZhYmU4ZTMyMWI5NDk0N2I3YTUyNzEwOWUzMmRhZTlfNS0zLTEtMS0w_050fe63f-d266-4321-815e-14541eed7f91"
      unitRef="usd">1791000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RhYmxlOmJmYWJlOGUzMjFiOTQ5NDdiN2E1MjcxMDllMzJkYWU5L3RhYmxlcmFuZ2U6YmZhYmU4ZTMyMWI5NDk0N2I3YTUyNzEwOWUzMmRhZTlfNS01LTEtMS0w_467e9336-dd58-4ca1-a092-8aab31e25449"
      unitRef="usd">951000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RhYmxlOmJmYWJlOGUzMjFiOTQ5NDdiN2E1MjcxMDllMzJkYWU5L3RhYmxlcmFuZ2U6YmZhYmU4ZTMyMWI5NDk0N2I3YTUyNzEwOWUzMmRhZTlfNi0xLTEtMS0w_fe8b30e6-e42c-4e9e-b14d-0366c63136a3"
      unitRef="usd">462000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RhYmxlOmJmYWJlOGUzMjFiOTQ5NDdiN2E1MjcxMDllMzJkYWU5L3RhYmxlcmFuZ2U6YmZhYmU4ZTMyMWI5NDk0N2I3YTUyNzEwOWUzMmRhZTlfNi0zLTEtMS0w_6296329e-a9d2-49bd-a46b-542577693551"
      unitRef="usd">564000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RhYmxlOmJmYWJlOGUzMjFiOTQ5NDdiN2E1MjcxMDllMzJkYWU5L3RhYmxlcmFuZ2U6YmZhYmU4ZTMyMWI5NDk0N2I3YTUyNzEwOWUzMmRhZTlfNi01LTEtMS0w_ff75be50-c867-4dac-9734-494ecd12edfe"
      unitRef="usd">2138000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgxNg_6e6ebe75-c39d-4620-b53e-81146a670b11">&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Inventory&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventory is valued at the lower of cost or market. Market is current replacement cost (by purchase or by reproduction, dependent on the type of inventory). In cases where market exceeds net realizable value (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;i.e.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;,&#160;estimated selling price less reasonably predictable costs of completion and disposal), inventories are stated at net realizable value. Market is not considered to be less than net realizable value reduced by an allowance for an approximately normal profit margin. The Company determines cost on a first-in first-out basis. Management assesses the valuation on a quarterly basis and writes down the value for any excess and obsolete inventory based upon expected demand, anticipated sales price, effect of new product introductions, product obsolescence, customer concentrations, product merchantability and other factors. Inventory write-downs are equal to the difference between the cost of inventories and market.&lt;/span&gt;&lt;/div&gt;</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgyMg_bd9636f6-b1e3-41a5-afaa-a2630905f0fd">Property and equipment are stated at cost less accumulated depreciation. Cost includes amounts paid to acquire or construct the asset as well as any expenditure that substantially adds to the value of or significantly extends the useful life of an existing asset. Repair and maintenance costs are expensed as incurred. Depreciation and amortization are computed using the straight-line method over the estimated useful lives of the assets, which range from 3 to 10 years. Leasehold improvements are amortized over the shorter of the lease term or expected useful life of the improvements.</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ib946ee6ab2bf476f862498fcc7c97f9c_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfNzc1Nw_d6138735-31d4-4486-8dea-2d6b8560ceaa">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i049d446b48ac485cb8e60d490fa327c7_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfNzc2Mw_06802612-9bdc-4031-a2d9-6687207d6d54">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:InternalUseSoftwarePolicy
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgyMw_0166fb23-5f57-4d73-80dc-510531329b16">&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Internal-use software, whether purchased or developed, is capitalized at cost and amortized on a straight-line basis over its estimated useful life. Costs associated with internally developed software are expensed until the point at which the project has reached the development stage. Subsequent additions, modifications or upgrades to internal-use software are capitalized only to the extent that they provide additional functionality. Software maintenance and training costs are expensed in the period in which they are incurred. The capitalization of internal-use software requires judgment in determining when a project has reached the development stage and the period over which the Company expects to benefit from the use of that software.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company capitalizes implementation costs related to cloud computing (i.e. hosting) arrangements that are accounted for as a service contract that meets the accounting requirement for capitalization as such implementation costs were incurred to develop or utilize internal-use software hosted by a third party vendor. The capitalized implementation costs are recorded as part of &#x201c;Other assets&#x201d; on the consolidated balance sheet and is amortized over the length of the service contract.&lt;/span&gt;&lt;/div&gt;</us-gaap:InternalUseSoftwarePolicy>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgyNA_c5f75817-1ef0-4be1-b8d5-73e0426cf8d1">Property, plant and equipment, including internal-use software, and capitalized implementation costs related to cloud computing arrangements, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset (asset group) may not be recoverable. An impairment loss would be recognized when the carrying amount of an asset exceeds the estimated undiscounted future cash flows expected to result from the use of the asset and its eventual disposition. The amount of the impairment loss to be recorded is calculated by the excess of the asset&#x2019;s carrying value over its fair value. Fair value is generally determined using a discounted cash flow analysis.</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:AssetImpairmentCharges
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfNDk0NzgwMjM1ODYwNQ_77786e58-9fa8-4d17-b414-32749553fde9"
      unitRef="usd">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfOTM3MQ_77681bc8-85d4-4338-857b-607738999904"
      unitRef="usd">1100000</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfOTM3OA_b8a470f7-4c05-4ad8-a3c3-c93ce88f3bcc"
      unitRef="usd">1600000</us-gaap:AssetImpairmentCharges>
    <us-gaap:BusinessCombinationsPolicy
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgxOA_3df70202-bac2-4fa6-834b-fa9f8de43713">&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Business Combinations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:4.5pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assets acquired and liabilities assumed as part of a business acquisition are generally recorded at their fair value at the date of acquisition. The excess of purchase price over the fair value of assets acquired and liabilities assumed is recorded as goodwill. Determining fair value of identifiable assets, particularly intangibles, and liabilities acquired also requires the Company to make estimates, which are based on all available information and in some cases assumptions with respect to the timing and amount of future revenues and expenses associated with an asset. Accounting for business acquisitions requires the Company to make judgments as to whether a purchase transaction is a multiple element contract, meaning that it includes other transaction components. This judgment and determination affect the amount of consideration paid that is allocable to assets and liabilities acquired in the business purchase transaction.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationsPolicy>
    <us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgxNw_9bb54d0d-3dc5-43dd-8af4-8c0c152fa4cc">&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill results from the purchase consideration paid in excess of the fair value of the net assets recorded in connection with a business acquisition. Goodwill is not amortized but is assessed for potential impairment at least annually during the fourth quarter of each fiscal year or between annual tests if an event occurs or circumstances change that would indicate the carrying amount may be impaired. Goodwill is tested at the reporting unit level, which the Company has determined to be the same as the entity as a whole (entity level). The Company first performs qualitative assessment to determine whether it is more likely than not that the fair value of our reporting unit is less than its carrying value. If, after assessing the qualitative factors, we determine that it is more likely than not that the fair value of our reporting unit is less than its carrying value, an impairment analysis will be performed.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Qualitative factors include industry and market consideration, overall financial performance, share price trends and market capitalization and Company-specific events. The Company determined, after performing a qualitative review of its reporting unit, that it is more likely than not that the fair value of our reporting unit exceeds its carrying value. Accordingly, there was no indication of impairment in the years ended 2020, 2019 and 2018 and no quantitative goodwill impairment test was performed.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Intangible Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Intangible assets include patents and other purchased intangible assets. Intangible assets with finite lives are amortized on a straight-line basis, with estimated useful lives ranging from 3 to 9 years. Indefinite-lived intangible assets are tested for impairment annually and are also tested for impairment between annual tests if an event occurs or circumstances change that would indicate that the carrying amount may be impaired. Intangible assets with finite lives are tested for impairment whenever events or circumstances indicate that the carrying amount of an asset (asset group) may not be recoverable. An impairment loss is recognized when the carrying amount of an asset exceeds the estimated undiscounted cash flows used in determining the fair value of the asset. The amount of the impairment loss to be recorded is calculated by the excess of the asset&#x2019;s carrying value over its fair value. Fair value is generally determined using a discounted cash flow analysis. There was no impairment of intangible assets in any of the years presented.&lt;/span&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTE4Mjk_074228a8-111b-4001-8e7e-a73354890cc8"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTE4Mjk_56e7e566-d462-4676-a374-e246acd93f46"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTE4Mjk_c8d38766-9111-486a-8866-88329b0ce14f"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="ib946ee6ab2bf476f862498fcc7c97f9c_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTIxNTg_188b573e-bf5f-48e9-ae04-94c4485c2c3a">P3Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i049d446b48ac485cb8e60d490fa327c7_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTIxNjQ_40e0cb22-0c02-41eb-b222-95ab5f9c4dfc">P9Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTI5NTU_2045c2a6-9757-45a1-920f-aad9e64d236b"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTI5NTU_35830f8a-2f1e-4b0f-99fa-b79fabd5a589"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTI5NTU_69027ae6-4eac-45eb-bf5d-b8f1403c0cbf"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:StandardProductWarrantyPolicy
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgyNg_26bc4489-f0b8-434b-b97c-de8a6a7c0beb">&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Warranty Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Microinverters and Other Products Sold Through December 31, 2013&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 warranty accrual provides for the replacement of microinverter units or other products that fail during the product&#x2019;s warranty term (typically 15 years for first and second generation microinverters and up to 25 years for subsequent generation microinverters). On a quarterly basis, the Company employs a consistent, systematic and rational methodology to assess the adequacy of its warranty liability. This assessment includes updating all key estimates and assumptions for each generation of product, based on historical results, trends and the most current data available as of the filing date. The key estimates and assumptions used in the warranty liability are thoroughly reviewed by management on a quarterly basis. The key estimates used by the Company to estimate its warranty liability are: (1)&#160;the number of units expected to fail over time (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;i.e.,&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;failure rate); (2)&#160;the number of failed units expected to result in warranty claims over time (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;i.e.,&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;claim rate); and (3)&#160;the per unit cost of replacement units, including outbound shipping and limited labor costs, expected to be incurred to replace failed units over time (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;i.e.,&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;replacement cost).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Estimated Failure Rates &#x2014; &lt;/span&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 Quality and Reliability department has primary responsibility to determine the estimated failure rates for each generation of microinverter. To establish initial failure rate estimates for each generation of microinverter, the Company&#x2019;s quality engineers use a combination of industry standard Mean Time Between Failure (&#x201c;MTBF&#x201d;) estimates for individual components contained in its microinverters, third party data collected on similar equipment deployed in outdoor environments similar to those in which the Company&#x2019;s microinverters are installed, and rigorous long term reliability and accelerated life cycle testing which simulates the service life of the microinverter in a short period of time. As units are deployed into operating environments, the Company continues to monitor product performance through its Enlighten monitoring platform. It typically takes &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTU0MzI_d4d9ab4a-ef9a-4f84-936b-40ee9c2867e7"&gt;three&lt;/span&gt; to nine months between the date of sale and date of end-user installation. Consequently, the Company&#x2019;s ability to monitor actual failures of units sold similarly lags by &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTU1OTY_d4d9ab4a-ef9a-4f84-936b-40ee9c2867e7"&gt;three&lt;/span&gt; to nine months. When a microinverter fails and is returned, the Company performs diagnostic root cause failure analysis to understand and isolate the underlying mechanism(s) causing the failure. The Company then uses the results of this analysis (combined with the actual, cumulative performance data collected on those units prior to failure through Enlighten) to draw conclusions with respect to how or if the identified failure mechanism(s) will impact the remaining units deployed in the installed base.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Estimated Claim Rates &#x2014; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Warranty claim rate estimates are based upon observed historical trends and assumptions with respect to expected customer behavior over the warranty period. As the vast majority of the Company&#x2019;s microinverters have been sold to end users for residential applications, the Company believes that warranty claim rates will be affected by changes over time in residential home ownership because the Company expects that subsequent homeowners are less likely to file claims than the homeowners who originally purchase the microinverters.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Estimated Replacement Costs &#x2014; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Three factors are considered in the Company&#x2019;s analysis of estimated replacement cost: (1)&#160;the estimated cost of replacement microinverters; (2)&#160;the estimated cost to ship replacement microinverters to end users; and (3)&#160;the estimated labor reimbursement expected to be paid to third party installers performing replacement services for the end user. Because the Company&#x2019;s warranty provides for the replacement of defective microinverters over long periods of time (between 15 and 25 years, depending on the generation of product purchased), the estimated per unit cost of current and future product generations is considered in the estimated replacement cost. Estimated costs to ship replacement units are based on observable, market-based shipping costs paid by the Company to third party freight carriers. The Company has a separate program that allows third-party installers to claim fixed-dollar reimbursements for labor costs they incur to replace failed microinverter units for a limited time from the date of original installation. Included in the Company&#x2019;s estimated replacement cost is an analysis of the number of fixed-dollar labor reimbursements expected to be claimed by third party installers over the limited offering period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In addition to the key estimates noted above, the Company also compares actual warranty results to expected results and evaluates any significant differences. Management may make additional adjustments to the warranty provision based on performance trends or other qualitative factors. If actual failure rates, claim rates, or replacement costs differ from the Company&#x2019;s estimates in future periods, changes to these estimates may be required, resulting in increases or decreases in the Company&#x2019;s warranty obligations. Such increases or decreases could be material.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Fair Value Option for Microinverters and Other Products Sold Since January 1, 2014&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 warranty obligations related to microinverters sold since January&#160;1, 2014 provide the Company the right, but not the requirement, to assign its warranty obligations to a third-party. Under ASC&#160;825, &#x201c;Financial Instruments&#x201d; (also referred to as &#x201c;fair value option&#x201d;), an entity may choose to elect the fair value option for such warranties at the time it first recognizes the eligible item. The Company made an irrevocable election to account for all eligible warranty obligations associated with microinverters sold since January&#160;1, 2014 at fair value. This election was made to reflect the underlying economics of the time value of money for an obligation that will be settled over an extended period of up to 25 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 value of warranty obligations by calculating the warranty obligations in the same manner as for sales prior to January&#160;1, 2014 and applying an expected present value technique to that result. The expected present value technique, an income approach, converts future amounts into a single current discounted amount. In addition to the key estimates of failure rates, claim rates and replacement costs, the Company used certain inputs that are unobservable and significant to the overall fair value measurement. Such additional assumptions included compensation comprised of a profit element and risk premium required of a market participant to assume the obligation and a discount rate based on the Company&#x2019;s credit-adjusted risk-free rate. See Note&#160;9. &#x201c;Fair Value Measurements,&#x201d; for additional information.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Warranty obligations initially recorded at fair value at the time of sale will be subsequently re-measured to fair value at each reporting date. In addition, the fair value of the liability will be accreted over the corresponding term of the warranty of up to 25 years using the interest method.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Warranty for Other Products&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company offers a 5&#x2011;year warranty for its Envoy communications gateway and a 10&#x2011;year warranty on its AC Battery storage solution. The warranties provide the Company with the right, but not the obligation, to assign its warranty obligations to a third-party. As such, warranties for Envoy and AC Battery storage solution products are accounted for under the fair value method of accounting.&lt;/span&gt;&lt;/div&gt;</us-gaap:StandardProductWarrantyPolicy>
    <us-gaap:StandardProductWarrantyPolicy
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgyNw_33777487-4db3-46e7-95ef-32eef9738251">&lt;div style="margin-bottom:6pt;margin-top:9pt;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;Warranty Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Microinverters and Other Products Sold Through December 31, 2013&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 warranty accrual provides for the replacement of microinverter units or other products that fail during the product&#x2019;s warranty term (typically 15 years for first and second generation microinverters and up to 25 years for subsequent generation microinverters). On a quarterly basis, the Company employs a consistent, systematic and rational methodology to assess the adequacy of its warranty liability. This assessment includes updating all key estimates and assumptions for each generation of product, based on historical results, trends and the most current data available as of the filing date. The key estimates and assumptions used in the warranty liability are thoroughly reviewed by management on a quarterly basis. The key estimates used by the Company to estimate its warranty liability are: (1)&#160;the number of units expected to fail over time (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;i.e.,&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;failure rate); (2)&#160;the number of failed units expected to result in warranty claims over time (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;i.e.,&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;claim rate); and (3)&#160;the per unit cost of replacement units, including outbound shipping and limited labor costs, expected to be incurred to replace failed units over time (&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;i.e.,&#160;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;replacement cost).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Estimated Failure Rates &#x2014; &lt;/span&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 Quality and Reliability department has primary responsibility to determine the estimated failure rates for each generation of microinverter. To establish initial failure rate estimates for each generation of microinverter, the Company&#x2019;s quality engineers use a combination of industry standard Mean Time Between Failure (&#x201c;MTBF&#x201d;) estimates for individual components contained in its microinverters, third party data collected on similar equipment deployed in outdoor environments similar to those in which the Company&#x2019;s microinverters are installed, and rigorous long term reliability and accelerated life cycle testing which simulates the service life of the microinverter in a short period of time. As units are deployed into operating environments, the Company continues to monitor product performance through its Enlighten monitoring platform. It typically takes &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTU0MzI_d4d9ab4a-ef9a-4f84-936b-40ee9c2867e7"&gt;three&lt;/span&gt; to nine months between the date of sale and date of end-user installation. Consequently, the Company&#x2019;s ability to monitor actual failures of units sold similarly lags by &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTU1OTY_d4d9ab4a-ef9a-4f84-936b-40ee9c2867e7"&gt;three&lt;/span&gt; to nine months. When a microinverter fails and is returned, the Company performs diagnostic root cause failure analysis to understand and isolate the underlying mechanism(s) causing the failure. The Company then uses the results of this analysis (combined with the actual, cumulative performance data collected on those units prior to failure through Enlighten) to draw conclusions with respect to how or if the identified failure mechanism(s) will impact the remaining units deployed in the installed base.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Estimated Claim Rates &#x2014; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Warranty claim rate estimates are based upon observed historical trends and assumptions with respect to expected customer behavior over the warranty period. As the vast majority of the Company&#x2019;s microinverters have been sold to end users for residential applications, the Company believes that warranty claim rates will be affected by changes over time in residential home ownership because the Company expects that subsequent homeowners are less likely to file claims than the homeowners who originally purchase the microinverters.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Estimated Replacement Costs &#x2014; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Three factors are considered in the Company&#x2019;s analysis of estimated replacement cost: (1)&#160;the estimated cost of replacement microinverters; (2)&#160;the estimated cost to ship replacement microinverters to end users; and (3)&#160;the estimated labor reimbursement expected to be paid to third party installers performing replacement services for the end user. Because the Company&#x2019;s warranty provides for the replacement of defective microinverters over long periods of time (between 15 and 25 years, depending on the generation of product purchased), the estimated per unit cost of current and future product generations is considered in the estimated replacement cost. Estimated costs to ship replacement units are based on observable, market-based shipping costs paid by the Company to third party freight carriers. The Company has a separate program that allows third-party installers to claim fixed-dollar reimbursements for labor costs they incur to replace failed microinverter units for a limited time from the date of original installation. Included in the Company&#x2019;s estimated replacement cost is an analysis of the number of fixed-dollar labor reimbursements expected to be claimed by third party installers over the limited offering period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In addition to the key estimates noted above, the Company also compares actual warranty results to expected results and evaluates any significant differences. Management may make additional adjustments to the warranty provision based on performance trends or other qualitative factors. If actual failure rates, claim rates, or replacement costs differ from the Company&#x2019;s estimates in future periods, changes to these estimates may be required, resulting in increases or decreases in the Company&#x2019;s warranty obligations. Such increases or decreases could be material.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Fair Value Option for Microinverters and Other Products Sold Since January 1, 2014&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 warranty obligations related to microinverters sold since January&#160;1, 2014 provide the Company the right, but not the requirement, to assign its warranty obligations to a third-party. Under ASC&#160;825, &#x201c;Financial Instruments&#x201d; (also referred to as &#x201c;fair value option&#x201d;), an entity may choose to elect the fair value option for such warranties at the time it first recognizes the eligible item. The Company made an irrevocable election to account for all eligible warranty obligations associated with microinverters sold since January&#160;1, 2014 at fair value. This election was made to reflect the underlying economics of the time value of money for an obligation that will be settled over an extended period of up to 25 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 value of warranty obligations by calculating the warranty obligations in the same manner as for sales prior to January&#160;1, 2014 and applying an expected present value technique to that result. The expected present value technique, an income approach, converts future amounts into a single current discounted amount. In addition to the key estimates of failure rates, claim rates and replacement costs, the Company used certain inputs that are unobservable and significant to the overall fair value measurement. Such additional assumptions included compensation comprised of a profit element and risk premium required of a market participant to assume the obligation and a discount rate based on the Company&#x2019;s credit-adjusted risk-free rate. See Note&#160;9. &#x201c;Fair Value Measurements,&#x201d; for additional information.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Warranty obligations initially recorded at fair value at the time of sale will be subsequently re-measured to fair value at each reporting date. In addition, the fair value of the liability will be accreted over the corresponding term of the warranty of up to 25 years using the interest method.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Warranty for Other Products&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company offers a 5&#x2011;year warranty for its Envoy communications gateway and a 10&#x2011;year warranty on its AC Battery storage solution. The warranties provide the Company with the right, but not the obligation, to assign its warranty obligations to a third-party. As such, warranties for Envoy and AC Battery storage solution products are accounted for under the fair value method of accounting.&lt;/span&gt;&lt;/div&gt;</us-gaap:StandardProductWarrantyPolicy>
    <enph:ProductWarrantyTerm
      contextRef="i0d4d6da4f475450d9f9e3504520a9e8f_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTM1MTc_9ece6983-5f79-4681-aeb6-1d59557a15a7">P15Y</enph:ProductWarrantyTerm>
    <enph:ProductWarrantyTerm
      contextRef="ie1e84d8ed0ae4708a0b2d20ecc704c81_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTM1Nzc_bd830e63-f7df-4990-ba15-ad0e68b8ee4c">P25Y</enph:ProductWarrantyTerm>
    <enph:ProductWarrantyEstimatedFailureRatePeriodBetweenProductSaleandStartofMonitoring
      contextRef="i049d446b48ac485cb8e60d490fa327c7_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTU0Mzg_9a15cc99-6464-4f40-9936-859134f12d98">P9M</enph:ProductWarrantyEstimatedFailureRatePeriodBetweenProductSaleandStartofMonitoring>
    <enph:ProductWarrantyEstimatedFailureRatePeriodBetweenProductSaleandStartofMonitoring
      contextRef="i049d446b48ac485cb8e60d490fa327c7_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTU2MDI_9a15cc99-6464-4f40-9936-859134f12d98">P9M</enph:ProductWarrantyEstimatedFailureRatePeriodBetweenProductSaleandStartofMonitoring>
    <enph:ProductWarrantyTerm
      contextRef="i0d4d6da4f475450d9f9e3504520a9e8f_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTcxNTg_9ece6983-5f79-4681-aeb6-1d59557a15a7">P15Y</enph:ProductWarrantyTerm>
    <enph:ProductWarrantyTerm
      contextRef="ie1e84d8ed0ae4708a0b2d20ecc704c81_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTcxNjU_bd830e63-f7df-4990-ba15-ad0e68b8ee4c">P25Y</enph:ProductWarrantyTerm>
    <enph:ProductWarrantyTerm
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMTkyNzM_6478be38-fa4a-49f3-96d5-4fbbece383af">P25Y</enph:ProductWarrantyTerm>
    <enph:ProductWarrantyTerm
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfMjAzNTU_6478be38-fa4a-49f3-96d5-4fbbece383af">P25Y</enph:ProductWarrantyTerm>
    <enph:ProductWarrantyTerm
      contextRef="i0e9ea099b3cf4a2b94e39a29979207c1_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTg2Nw_1322270d-1dbe-4891-853f-001fc29fb00b">P5Y</enph:ProductWarrantyTerm>
    <enph:ProductWarrantyTerm
      contextRef="i9dfe544fca684122a94d803baf7a97b1_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTg2OA_f41057a7-3b6d-4e25-9fac-9f8580b1c4e9">P10Y</enph:ProductWarrantyTerm>
    <us-gaap:CommitmentsAndContingenciesPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfNDk0NzgwMjM1ODU5OA_d9e87a86-b796-4d88-be43-bdd11448674d">&lt;div style="margin-bottom:6pt;margin-top:9pt;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:174%"&gt;Commitments and Contingencies&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 is subject to loss contingencies and loss recoveries, such as legal proceedings and claims arising out of its business as well as tariff refunds. An accrual for a loss contingency or loss recovery is recognized when it is probable and the amount of loss or recovery can be reasonably estimated.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesPolicyTextBlock>
    <us-gaap:ResearchAndDevelopmentExpensePolicy
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgyOA_bda0ad0e-c253-4486-ac85-d3493d26e4f3">&lt;div style="margin-bottom:6pt;margin-top:9pt;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 Costs &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company expenses research and development costs as incurred. Research and development expense consists primarily of product development personnel costs, including salaries and benefits, stock-based compensation, other professional costs and allocated facilities costs.&lt;/span&gt;&lt;/div&gt;</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgyOQ_4f05b607-df79-4b01-8baf-239fbd76fbeb">&lt;div style="margin-bottom:6pt;margin-top:9pt;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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Share-based payments are required to be recognized in the Company&#x2019;s consolidated statements of operations based on their fair values and the estimated number of shares expected to vest. The Company measures stock-based compensation expense for all share-based payment awards, including stock options made to employees and directors, based on the estimated fair values on the date of the grant. The fair value of stock options granted is estimated using the Black-Scholes option valuation model. The fair value of restricted stock units granted is determined based on the price of the Company&#x2019;s common stock on the date of grant. The fair value of non-market&#x2011;based performance stock units granted is determined based on the date of grant or when achievement of performance is probable. The fair value of market&#x2011;based performance stock units granted is determined using a Monte&#x2011;Carlo model based on the date of grant or when achievement of performance is probable.&lt;/span&gt;&lt;/div&gt;Stock-based compensation for stock options and restricted stock units (&#x201c;RSUs&#x201d;) is recognized on a straight-line basis over the requisite service period. Stock-based compensation for performance stock units (&#x201c;PSUs&#x201d;) without market conditions is recognized when the performance condition is probable of being achieved, and then on a graded basis over the requisite service period. Stock-based compensation for PSUs with market conditions is recognized on a straight-line basis over the requisite service period. Additionally, the Company estimates its forfeiture rate annually based on historical experience and revise the estimates of forfeiture in subsequent periods if actual forfeitures differ from those estimates.</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgzMA_ce66d77b-42f5-4be2-a989-bbfe5722b127">&lt;div style="margin-bottom:6pt;margin-top:9pt"&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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company determines if an arrangement is or contains a lease at inception. Operating lease assets represent the Company&#x2019;s right to use an underlying asset for the lease term and lease liabilities represent the Company&#x2019;s obligation to make lease payments over the lease term.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Operating lease assets and liabilities are recognized based on the present value of the remaining lease payments discounted using the Company&#x2019;s incremental borrowing rate. Operating lease assets also include initial direct costs incurred and prepaid lease payments, minus any lease incentives. The Company&#x2019;s lease terms include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. Lease expense is recognized on a straight-line basis over the lease term.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company combines the lease and non-lease components in determining the operating lease assets and liabilities.&lt;/span&gt;&lt;/div&gt;</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgzMQ_5da5e9ff-abc8-431b-9e40-6aa8129c52f3">&lt;div style="margin-bottom:6pt;margin-top:9pt;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 Translation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company and most of its subsidiaries use their respective local currency as their functional currency. Accordingly, foreign currency assets and liabilities are translated using exchange rates in effect at the end of the period. Aggregate exchange gains and losses arising from the translation of foreign assets and liabilities are included in accumulated other comprehensive income (loss) in stockholders' equity. Foreign subsidiaries that use the U.S. dollar as their functional currency remeasure monetary assets and liabilities using exchange rates in effect at the end of the period. In addition, transactions that are denominated in non-functional currency are remeasured using exchange rates in effect at the end of the period. Exchange gains and losses arising from the remeasurement of monetary assets and liabilities are included in other income (expense), net in the consolidated statements of operations. Non-monetary assets and liabilities are carried at their historical values.&lt;/span&gt;&lt;/div&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:ComprehensiveIncomePolicyPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgzMg_d6faa49d-bada-4cb0-b14e-5ec8074aff24">&lt;div style="margin-bottom:6pt;margin-top:9pt;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 Income (Loss)&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Comprehensive income (loss) consists of two components, net income (loss) and other comprehensive income (loss). Other comprehensive income (loss) refers to gains and losses that are recorded as an element of stockholders&#x2019; equity but are excluded from net income (loss). The Company&#x2019;s other comprehensive income (loss) consists of foreign currency translation adjustments for all periods presented.&lt;/span&gt;&lt;/div&gt;</us-gaap:ComprehensiveIncomePolicyPolicyTextBlock>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl83Ni9mcmFnOjE5ZDMyMGYzZmI0NDRmYmJhNGYwMzFmMWI0NDZhODdmL3RleHRyZWdpb246MTlkMzIwZjNmYjQ0NGZiYmE0ZjAzMWYxYjQ0NmE4N2ZfODc5NjA5MzA0OTgzMw_821215c9-3b44-4c94-a969-7d7d63f1870f">&lt;div style="margin-bottom:6pt;margin-top:9pt;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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company records income taxes using the asset and liability method, which requires the recognition of deferred tax assets and liabilities for the expected tax consequences of temporary differences between the tax bases of assets and liabilities for financial reporting purposes and amounts recognized for income tax purposes. In estimating future tax consequences, generally all expected future events other than enactments or changes in the tax law or rates are considered. Valuation allowances are provided when necessary to reduce deferred tax assets to the amount expected to be realized.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company assesses the realizability of the deferred tax assets to determine release of valuation allowance as necessary. In the event the Company determines that it is more likely than not that we would be able to realize deferred tax assets in the future in excess of our net recorded amount, an adjustment to the valuation allowance for the deferred tax asset would increase income in the period such determination was made. Likewise, should it be determined that additional amounts of the net deferred tax asset will not be realized in the future, an adjustment to increase the deferred tax asset valuation allowance will be charged to income in the period such determination is made.&lt;/span&gt;&lt;/div&gt;The Company operates in various tax jurisdictions and is subject to audit by various tax authorities. The Company follows accounting for uncertainty in income taxes which requires that the tax effects of a position be recognized only if it is &#x201c;more likely than not&#x201d; to be sustained based solely on its technical merits as of the reporting date. The Company considers many factors when evaluating and estimating its tax positions and tax benefits, which may require periodic adjustments and which may not accurately anticipate actual outcomes.</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84NS9mcmFnOjg0NTM4YTkwZjYzMDRjOTI5MWVhZTJkNjcxNTc5NzJkL3RleHRyZWdpb246ODQ1MzhhOTBmNjMwNGM5MjkxZWFlMmQ2NzE1Nzk3MmRfODc5NjA5MzAyNDI0NQ_806cec5e-36dd-4809-924e-3cff5cf85b79">&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Recently Adopted Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In August 2018, the FASB issued ASU&#160;2018-15, &#x201c;Customer&#x2019;s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That Is a Service Contract,&#x201d; to reduce diversity in practice in accounting for the costs of implementing cloud computing arrangements that are service contracts. ASU&#160;2018-15 allows entities to apply the guidance in the ASC&#160;350-40, &#x201c;Intangibles&#x2013;Goodwill and Other&#x2013;Internal-Use Software,&#x201d; to determine which implementation costs are eligible to be capitalized as assets in a cloud computing arrangement that is considered a service contract. ASU&#160;2018-15 is effective for fiscal years beginning after December&#160;15, 2019, and interim periods within those fiscal years. Early adoption is permitted, including adoption in any interim period. Entities have the option to apply the guidance prospectively to all implementation costs incurred after the date of adoption or retrospectively and are required to make certain disclosures in the interim and annual period of adoption. The Company adopted the new standard effective January 1, 2020 on a prospective basis and the adoption of this guidance did not have a material impact on its consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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, &#x201c;Financial Instruments-Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments,&#x201d; which requires the measurement and recognition of expected credit losses for financial assets held at amortized cost. ASU 2016-13 replaces the existing incurred loss impairment model with a current expected credit loss (CECL) model which will result in earlier recognition of credit losses.&#160;On January 1, 2020, the Company on a prospective basis adopted Topic 326, the measurement of expected credit losses under the CECL model is applicable to financial assets measured at amortized cost, including accounts receivable. The adoption of this guidance did not have a material impact on the Company&#x2019;s consolidated financial statements.&lt;/span&gt;&lt;/div&gt;Recently Issued Accounting Pronouncements Not Yet Effective In August 2020, the FASB issued Account Standard Update (&#x201c;ASU&#x201d;) 2020-06, &#x201c;Debt - Debt with Conversion and Other Options (subtopic 470-20) and Derivatives and Hedging - Contracts in Entity&#x2019;s Own Equity (subtopic 815-40),&#x201d; which reduces the number of accounting models in ASC 470-20 that require separate accounting for embedded conversion features. As a result, a convertible debt instrument will be accounted for as a single liability measured at its amortized cost as long as no other features require bifurcation and recognition as derivatives. By removing those separation models, the effective interest rate of convertible debt instruments will be closer to the coupon interest rate. Further, the diluted net income per share calculation for convertible instruments will require the Company to use the if-converted method. The treasury stock method should no longer be used to calculate diluted net income per share for convertible instruments. The amendment will be effective for the Company with annual periods beginning January 1, 2022 and early adoption is permitted. The Company is evaluating the accounting, transition and disclosure requirements of the standard</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RleHRyZWdpb246MjVjZWZjYTMyZmIzNDZjMTg2ZGViNjM4ZDU3MGM5NTVfMTY0MA_e0df197c-1af4-4da5-bd7d-6de62a8a7ea3">REVENUE RECOGNITION &lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Disaggregated Revenue&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has one business activity, which is the design, manufacture and sale of solutions for the solar photovoltaic (&#x201c;PV&#x201d;) industry. Disaggregated revenue by primary geographical market and timing of revenue recognition for the Company&#x2019;s single product line are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:70.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.937%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;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="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Primary geographical markets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;U.S.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;637,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;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;523,577&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;International&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;136,546&#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:9pt;font-weight:400;line-height:100%"&gt;100,756&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;774,425&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;624,333&#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 style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #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:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;Timing of revenue recognition:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Products delivered at a point in time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;728,254&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;584,556&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Products and services delivered over time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;46,171&#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:9pt;font-weight:400;line-height:100%"&gt;39,777&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;774,425&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;624,333&#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-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Contract Balances&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Receivables, and contract assets and contract liabilities from contracts with customers are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:72.730%"/&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.621%"/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Receivables&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;182,165&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;145,413&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Short-term contract assets (Prepaid expenses and other assets)&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:9pt;font-weight:400;line-height:100%"&gt;17,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;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:9pt;font-weight:400;line-height:100%"&gt;15,055&#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:9pt;font-weight:400;line-height:100%"&gt;Long-term contract assets (Other assets)&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:9pt;font-weight:400;line-height:100%"&gt;51,986&#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:9pt;font-weight:400;line-height:100%"&gt;42,087&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Short-term contract liabilities (Deferred revenues)&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:9pt;font-weight:400;line-height:100%"&gt;47,665&#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:9pt;font-weight:400;line-height:100%"&gt;81,783&#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:9pt;font-weight:400;line-height:100%"&gt;Long-term contract liabilities (Deferred revenues)&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:9pt;font-weight:400;line-height:100%"&gt;125,473&#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:9pt;font-weight:400;line-height:100%"&gt;100,204&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company receives payments from customers based upon contractual billing schedules. Accounts receivable are recorded when the right to consideration becomes unconditional. Contract assets include deferred product costs and commissions associated with the deferred revenue and will be amortized along with the associated revenue. The Company had no asset impairment charges related to contract assets in the year ended December 31, 2020. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Significant changes in the balances of contract assets (prepaid expenses and other assets) during the period are 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:86.162%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.638%"/&gt;&lt;td style="width:0.1%"/&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:9pt;font-weight:700;line-height:100%"&gt;Contract Assets&lt;/span&gt;&lt;/td&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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance on December 31, 2019&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;57,142&#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 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Amount recognized&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:9pt;font-weight:400;line-height:100%"&gt;(17,652)&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 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Increase&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:9pt;font-weight:400;line-height:100%"&gt;30,375&#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:9pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2020&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;69,865&#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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract liabilities are recorded as deferred revenue on the accompanying consolidated balance sheets and include payments received in advance of performance obligations under the contract and are realized when the associated revenue is recognized under the contract. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Significant changes in the balances of contract liabilities (deferred revenues) during the period are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:86.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.620%"/&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;Contract Liabilities&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 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance on December 31, 2019&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;181,987&#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 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue recognized&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:9pt;font-weight:400;line-height:100%"&gt;(87,555)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Increase due to billings&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:9pt;font-weight:400;line-height:100%"&gt;78,706&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%"&gt;173,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Remaining Performance Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Estimated revenue expected to be recognized in future periods related to performance obligations that are unsatisfied or partially unsatisfied at the end of the reporting period are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:86.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.620%"/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Fiscal year:&lt;/span&gt;&lt;/td&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2021&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;47,665&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2022&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:9pt;font-weight:400;line-height:100%"&gt;38,402&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&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:9pt;font-weight:400;line-height:100%"&gt;32,569&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&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:9pt;font-weight:400;line-height:100%"&gt;27,311&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&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:9pt;font-weight:400;line-height:100%"&gt;20,291&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Thereafter&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:9pt;font-weight:400;line-height:100%"&gt;6,900&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;173,138&#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;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RleHRyZWdpb246MjVjZWZjYTMyZmIzNDZjMTg2ZGViNjM4ZDU3MGM5NTVfMTY2NA_5e7b77e8-10d0-45ca-b1cc-57ddd91d6e40">Disaggregated revenue by primary geographical market and timing of revenue recognition for the Company&#x2019;s single product line are as follows:&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:70.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.937%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;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="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Primary geographical markets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;U.S.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;637,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;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;523,577&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;International&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;136,546&#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:9pt;font-weight:400;line-height:100%"&gt;100,756&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;774,425&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;624,333&#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 style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #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:3pt double #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:9pt;font-weight:400;line-height:100%"&gt;Timing of revenue recognition:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Products delivered at a point in time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;728,254&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;584,556&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Products and services delivered over time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;46,171&#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:9pt;font-weight:400;line-height:100%"&gt;39,777&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;774,425&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;624,333&#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;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i738e7c5f49e743eca371b9b98641fd2f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgyODI0MzYyMzg5MzQ1MjM5OWNlYmZkNDk0NjU0Y2ZhL3RhYmxlcmFuZ2U6ODI4MjQzNjIzODkzNDUyMzk5Y2ViZmQ0OTQ2NTRjZmFfNC01LTEtMS0w_a45fe25f-d673-49df-acff-3152d7ba9e84"
      unitRef="usd">637879000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icf395ba8d7384d26bfc43f27b2d18a89_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgyODI0MzYyMzg5MzQ1MjM5OWNlYmZkNDk0NjU0Y2ZhL3RhYmxlcmFuZ2U6ODI4MjQzNjIzODkzNDUyMzk5Y2ViZmQ0OTQ2NTRjZmFfNC03LTEtMS0w_49e20fdf-df4c-40e4-b747-8c77b3a533f1"
      unitRef="usd">523577000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia775cb3eda21479e9199f376db92f7f7_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgyODI0MzYyMzg5MzQ1MjM5OWNlYmZkNDk0NjU0Y2ZhL3RhYmxlcmFuZ2U6ODI4MjQzNjIzODkzNDUyMzk5Y2ViZmQ0OTQ2NTRjZmFfNS01LTEtMS0w_f4c78916-da26-4234-9af0-206f4ed97a23"
      unitRef="usd">136546000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic621f95ecf774b2fae8a8d9bdfa7d5e8_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgyODI0MzYyMzg5MzQ1MjM5OWNlYmZkNDk0NjU0Y2ZhL3RhYmxlcmFuZ2U6ODI4MjQzNjIzODkzNDUyMzk5Y2ViZmQ0OTQ2NTRjZmFfNS03LTEtMS0w_3b6be20d-3585-45c6-a11b-c783098ac894"
      unitRef="usd">100756000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgyODI0MzYyMzg5MzQ1MjM5OWNlYmZkNDk0NjU0Y2ZhL3RhYmxlcmFuZ2U6ODI4MjQzNjIzODkzNDUyMzk5Y2ViZmQ0OTQ2NTRjZmFfNi01LTEtMS0w_f042029c-f3be-4319-be91-a622491b9590"
      unitRef="usd">774425000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgyODI0MzYyMzg5MzQ1MjM5OWNlYmZkNDk0NjU0Y2ZhL3RhYmxlcmFuZ2U6ODI4MjQzNjIzODkzNDUyMzk5Y2ViZmQ0OTQ2NTRjZmFfNi03LTEtMS0w_afc58a37-104e-482b-9147-a8563bd06c7b"
      unitRef="usd">624333000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6ec5d73ed01d4b44b19fc6cb6fac2b79_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgyODI0MzYyMzg5MzQ1MjM5OWNlYmZkNDk0NjU0Y2ZhL3RhYmxlcmFuZ2U6ODI4MjQzNjIzODkzNDUyMzk5Y2ViZmQ0OTQ2NTRjZmFfOS01LTEtMS0w_6002780a-bd6c-49ef-b7c7-3e6988235465"
      unitRef="usd">728254000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i708d2ce3910e436397ce564882237942_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgyODI0MzYyMzg5MzQ1MjM5OWNlYmZkNDk0NjU0Y2ZhL3RhYmxlcmFuZ2U6ODI4MjQzNjIzODkzNDUyMzk5Y2ViZmQ0OTQ2NTRjZmFfOS03LTEtMS0w_75d0edea-3445-49f7-a831-626e5054fa8e"
      unitRef="usd">584556000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iff06c57cc9e84b5ea73a7eb91d67f022_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgyODI0MzYyMzg5MzQ1MjM5OWNlYmZkNDk0NjU0Y2ZhL3RhYmxlcmFuZ2U6ODI4MjQzNjIzODkzNDUyMzk5Y2ViZmQ0OTQ2NTRjZmFfMTAtNS0xLTEtMA_8165521e-6298-4cdf-9cf0-5af5a6633d3e"
      unitRef="usd">46171000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7af845f8e6284fb4a3a543317fe05e5a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgyODI0MzYyMzg5MzQ1MjM5OWNlYmZkNDk0NjU0Y2ZhL3RhYmxlcmFuZ2U6ODI4MjQzNjIzODkzNDUyMzk5Y2ViZmQ0OTQ2NTRjZmFfMTAtNy0xLTEtMA_692dc9e0-d446-4df4-8885-80160a4bfed3"
      unitRef="usd">39777000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgyODI0MzYyMzg5MzQ1MjM5OWNlYmZkNDk0NjU0Y2ZhL3RhYmxlcmFuZ2U6ODI4MjQzNjIzODkzNDUyMzk5Y2ViZmQ0OTQ2NTRjZmFfMTEtNS0xLTEtMA_b472c8ec-3c26-492e-a1b8-ed6572d6acf7"
      unitRef="usd">774425000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgyODI0MzYyMzg5MzQ1MjM5OWNlYmZkNDk0NjU0Y2ZhL3RhYmxlcmFuZ2U6ODI4MjQzNjIzODkzNDUyMzk5Y2ViZmQ0OTQ2NTRjZmFfMTEtNy0xLTEtMA_c842c381-abe5-4a58-b216-367ff02c7d34"
      unitRef="usd">624333000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RleHRyZWdpb246MjVjZWZjYTMyZmIzNDZjMTg2ZGViNjM4ZDU3MGM5NTVfMTY0Nw_261a1e36-9178-41cd-a276-481caf24b4a2">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Receivables, and contract assets and contract liabilities from contracts with customers are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:72.730%"/&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.621%"/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Receivables&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;182,165&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;145,413&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Short-term contract assets (Prepaid expenses and other assets)&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:9pt;font-weight:400;line-height:100%"&gt;17,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;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:9pt;font-weight:400;line-height:100%"&gt;15,055&#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:9pt;font-weight:400;line-height:100%"&gt;Long-term contract assets (Other assets)&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:9pt;font-weight:400;line-height:100%"&gt;51,986&#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:9pt;font-weight:400;line-height:100%"&gt;42,087&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Short-term contract liabilities (Deferred revenues)&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:9pt;font-weight:400;line-height:100%"&gt;47,665&#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:9pt;font-weight:400;line-height:100%"&gt;81,783&#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:9pt;font-weight:400;line-height:100%"&gt;Long-term contract liabilities (Deferred revenues)&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:9pt;font-weight:400;line-height:100%"&gt;125,473&#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:9pt;font-weight:400;line-height:100%"&gt;100,204&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Significant changes in the balances of contract assets (prepaid expenses and other assets) during the period are 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:86.162%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.638%"/&gt;&lt;td style="width:0.1%"/&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:9pt;font-weight:700;line-height:100%"&gt;Contract Assets&lt;/span&gt;&lt;/td&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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance on December 31, 2019&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;57,142&#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 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Amount recognized&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:9pt;font-weight:400;line-height:100%"&gt;(17,652)&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 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Increase&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:9pt;font-weight:400;line-height:100%"&gt;30,375&#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:9pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2020&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;69,865&#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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Significant changes in the balances of contract liabilities (deferred revenues) during the period are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:86.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.620%"/&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;Contract Liabilities&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 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Balance on December 31, 2019&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;181,987&#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 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue recognized&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:9pt;font-weight:400;line-height:100%"&gt;(87,555)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Increase due to billings&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:9pt;font-weight:400;line-height:100%"&gt;78,706&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%"&gt;173,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmVlODAwMGRkMzZmNTQyY2JhOTQ1NTg2MzQ2Nzk1Y2M2L3RhYmxlcmFuZ2U6ZWU4MDAwZGQzNmY1NDJjYmE5NDU1ODYzNDY3OTVjYzZfMi0xLTEtMS0w_62e0e5df-8e01-4a1a-a7d5-4c241517be0f"
      unitRef="usd">182165000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmVlODAwMGRkMzZmNTQyY2JhOTQ1NTg2MzQ2Nzk1Y2M2L3RhYmxlcmFuZ2U6ZWU4MDAwZGQzNmY1NDJjYmE5NDU1ODYzNDY3OTVjYzZfMi0zLTEtMS0w_ad6e5e85-013c-47ea-bc6f-6dbd215aeb40"
      unitRef="usd">145413000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmVlODAwMGRkMzZmNTQyY2JhOTQ1NTg2MzQ2Nzk1Y2M2L3RhYmxlcmFuZ2U6ZWU4MDAwZGQzNmY1NDJjYmE5NDU1ODYzNDY3OTVjYzZfNC0xLTEtMS0w_5afa5c65-8bd4-449a-8223-24fb9f3a98c3"
      unitRef="usd">17879000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmVlODAwMGRkMzZmNTQyY2JhOTQ1NTg2MzQ2Nzk1Y2M2L3RhYmxlcmFuZ2U6ZWU4MDAwZGQzNmY1NDJjYmE5NDU1ODYzNDY3OTVjYzZfNC0zLTEtMS0w_e592f69b-a323-4be9-839b-0a11b801cf33"
      unitRef="usd">15055000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmVlODAwMGRkMzZmNTQyY2JhOTQ1NTg2MzQ2Nzk1Y2M2L3RhYmxlcmFuZ2U6ZWU4MDAwZGQzNmY1NDJjYmE5NDU1ODYzNDY3OTVjYzZfNS0xLTEtMS0w_ab40377a-2e9e-4c32-84b3-6e05f9c64c1f"
      unitRef="usd">51986000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmVlODAwMGRkMzZmNTQyY2JhOTQ1NTg2MzQ2Nzk1Y2M2L3RhYmxlcmFuZ2U6ZWU4MDAwZGQzNmY1NDJjYmE5NDU1ODYzNDY3OTVjYzZfNS0zLTEtMS0w_e5a55d50-c146-4b4c-9f56-80056304f853"
      unitRef="usd">42087000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmVlODAwMGRkMzZmNTQyY2JhOTQ1NTg2MzQ2Nzk1Y2M2L3RhYmxlcmFuZ2U6ZWU4MDAwZGQzNmY1NDJjYmE5NDU1ODYzNDY3OTVjYzZfOS0xLTEtMS0w_28eb8ce9-f47b-4ae9-b0cc-e579d785402a"
      unitRef="usd">47665000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmVlODAwMGRkMzZmNTQyY2JhOTQ1NTg2MzQ2Nzk1Y2M2L3RhYmxlcmFuZ2U6ZWU4MDAwZGQzNmY1NDJjYmE5NDU1ODYzNDY3OTVjYzZfOS0zLTEtMS0w_e5d75323-b952-4fd1-bd18-03a2bd23593c"
      unitRef="usd">81783000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmVlODAwMGRkMzZmNTQyY2JhOTQ1NTg2MzQ2Nzk1Y2M2L3RhYmxlcmFuZ2U6ZWU4MDAwZGQzNmY1NDJjYmE5NDU1ODYzNDY3OTVjYzZfMTAtMS0xLTEtMA_d20e4d7a-59e1-437e-abc4-a8ea43dcd2c8"
      unitRef="usd">125473000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmVlODAwMGRkMzZmNTQyY2JhOTQ1NTg2MzQ2Nzk1Y2M2L3RhYmxlcmFuZ2U6ZWU4MDAwZGQzNmY1NDJjYmE5NDU1ODYzNDY3OTVjYzZfMTAtMy0xLTEtMA_19ecb8c0-501d-41dd-bc24-8423f5d49b18"
      unitRef="usd">100204000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:CapitalizedContractCostImpairmentLoss
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RleHRyZWdpb246MjVjZWZjYTMyZmIzNDZjMTg2ZGViNjM4ZDU3MGM5NTVfNzg4_926b4dec-43a0-42fc-a0f8-3d7a8e937394"
      unitRef="usd">0</us-gaap:CapitalizedContractCostImpairmentLoss>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmZmZWZlOTAzMzI4ZTQ0YjZhMDZjNzBlYThiNWIyM2Y2L3RhYmxlcmFuZ2U6ZmZlZmU5MDMzMjhlNDRiNmEwNmM3MGVhOGI1YjIzZjZfMS0xLTEtMS0w_939dd8f7-64d5-423c-a379-d7ea737289b7"
      unitRef="usd">57142000</us-gaap:ContractWithCustomerAssetNet>
    <enph:ContractWithCustomerAssetAmountRecognized
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmZmZWZlOTAzMzI4ZTQ0YjZhMDZjNzBlYThiNWIyM2Y2L3RhYmxlcmFuZ2U6ZmZlZmU5MDMzMjhlNDRiNmEwNmM3MGVhOGI1YjIzZjZfMi0xLTEtMS0w_e0e9e161-ee20-4345-bd89-1e62e739efbe"
      unitRef="usd">17652000</enph:ContractWithCustomerAssetAmountRecognized>
    <enph:ContractWithCustomerAssetNewContractAdditions
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmZmZWZlOTAzMzI4ZTQ0YjZhMDZjNzBlYThiNWIyM2Y2L3RhYmxlcmFuZ2U6ZmZlZmU5MDMzMjhlNDRiNmEwNmM3MGVhOGI1YjIzZjZfMy0xLTEtMS0w_4e9b65f8-70fd-4895-a0d4-ab8f4fe9209e"
      unitRef="usd">30375000</enph:ContractWithCustomerAssetNewContractAdditions>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOmZmZWZlOTAzMzI4ZTQ0YjZhMDZjNzBlYThiNWIyM2Y2L3RhYmxlcmFuZ2U6ZmZlZmU5MDMzMjhlNDRiNmEwNmM3MGVhOGI1YjIzZjZfNC0xLTEtMS0w_bd90a780-36c4-47f6-b211-1c5b68c967a0"
      unitRef="usd">69865000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjg0MjJiMWY2YWY4MzRkMmQ5NTk5ZmUzYTYyOGE4ZmNjL3RhYmxlcmFuZ2U6ODQyMmIxZjZhZjgzNGQyZDk1OTlmZTNhNjI4YThmY2NfMS0xLTEtMS0w_e94e9dd2-072a-4f90-b5a3-664c6862b446"
      unitRef="usd">181987000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjg0MjJiMWY2YWY4MzRkMmQ5NTk5ZmUzYTYyOGE4ZmNjL3RhYmxlcmFuZ2U6ODQyMmIxZjZhZjgzNGQyZDk1OTlmZTNhNjI4YThmY2NfMi0xLTEtMS0w_54de44e7-4cc3-46c4-b4bc-fbb4ce829af1"
      unitRef="usd">87555000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <enph:ContractWithCustomerLiabilityIncreaseFromCashReceipts
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjg0MjJiMWY2YWY4MzRkMmQ5NTk5ZmUzYTYyOGE4ZmNjL3RhYmxlcmFuZ2U6ODQyMmIxZjZhZjgzNGQyZDk1OTlmZTNhNjI4YThmY2NfNC0xLTEtMS0w_91db4762-3c0f-440a-8aa0-203cca42b9a2"
      unitRef="usd">78706000</enph:ContractWithCustomerLiabilityIncreaseFromCashReceipts>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjg0MjJiMWY2YWY4MzRkMmQ5NTk5ZmUzYTYyOGE4ZmNjL3RhYmxlcmFuZ2U6ODQyMmIxZjZhZjgzNGQyZDk1OTlmZTNhNjI4YThmY2NfNi0xLTEtMS0w_f93322ca-61c6-4b09-8f4b-0cae559defe4"
      unitRef="usd">173138000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RleHRyZWdpb246MjVjZWZjYTMyZmIzNDZjMTg2ZGViNjM4ZDU3MGM5NTVfMTY2Mw_744de9d0-4bf0-4a98-8bea-310bb2cb67a9">&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Estimated revenue expected to be recognized in future periods related to performance obligations that are unsatisfied or partially unsatisfied at the end of the reporting period are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:86.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.620%"/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Fiscal year:&lt;/span&gt;&lt;/td&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2021&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;47,665&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2022&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:9pt;font-weight:400;line-height:100%"&gt;38,402&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&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:9pt;font-weight:400;line-height:100%"&gt;32,569&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&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:9pt;font-weight:400;line-height:100%"&gt;27,311&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&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:9pt;font-weight:400;line-height:100%"&gt;20,291&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Thereafter&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:9pt;font-weight:400;line-height:100%"&gt;6,900&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;173,138&#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;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i5c76a5f2b43146a1a475eebc6f528ae5_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgzM2NmNGY1OWM3YzRmMThhMDYwNWNjNzM2YmM4NmY1L3RhYmxlcmFuZ2U6ODMzY2Y0ZjU5YzdjNGYxOGEwNjA1Y2M3MzZiYzg2ZjVfMy0xLTEtMS0w_17b6d48e-16ce-4b22-a0a3-cbff5bd79f5c"
      unitRef="usd">47665000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i4cfb83d6548246bd8d8b9d7bdddb7e51_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgzM2NmNGY1OWM3YzRmMThhMDYwNWNjNzM2YmM4NmY1L3RhYmxlcmFuZ2U6ODMzY2Y0ZjU5YzdjNGYxOGEwNjA1Y2M3MzZiYzg2ZjVfNC0xLTEtMS0w_db2f8663-90d9-44a3-a6e6-85f0c3b11a53"
      unitRef="usd">38402000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i550c1567ada549168286619637ba196a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgzM2NmNGY1OWM3YzRmMThhMDYwNWNjNzM2YmM4NmY1L3RhYmxlcmFuZ2U6ODMzY2Y0ZjU5YzdjNGYxOGEwNjA1Y2M3MzZiYzg2ZjVfNS0xLTEtMS0w_57edd833-1a08-47d3-9d1c-535818c201ac"
      unitRef="usd">32569000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i73e66a0daea2469da3afaf3dc0b30d35_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgzM2NmNGY1OWM3YzRmMThhMDYwNWNjNzM2YmM4NmY1L3RhYmxlcmFuZ2U6ODMzY2Y0ZjU5YzdjNGYxOGEwNjA1Y2M3MzZiYzg2ZjVfNi0xLTEtMS0w_ac1ad00b-1046-4146-9bda-8ddbb2d64d1d"
      unitRef="usd">27311000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i5a769a3bce8b4532aa1f8d19c57035c1_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgzM2NmNGY1OWM3YzRmMThhMDYwNWNjNzM2YmM4NmY1L3RhYmxlcmFuZ2U6ODMzY2Y0ZjU5YzdjNGYxOGEwNjA1Y2M3MzZiYzg2ZjVfNy0xLTEtMS0w_a3f0bdeb-cf63-4c61-859b-1224d3c7746c"
      unitRef="usd">20291000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i4b63722f0ce048a8b4f7bdb9b2fd11b5_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgzM2NmNGY1OWM3YzRmMThhMDYwNWNjNzM2YmM4NmY1L3RhYmxlcmFuZ2U6ODMzY2Y0ZjU5YzdjNGYxOGEwNjA1Y2M3MzZiYzg2ZjVfOC0xLTEtMS0w_7a6fbdd2-582f-4385-9fd3-58c8e1a2f065"
      unitRef="usd">6900000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl84OC9mcmFnOjI1Y2VmY2EzMmZiMzQ2YzE4NmRlYjYzOGQ1NzBjOTU1L3RhYmxlOjgzM2NmNGY1OWM3YzRmMThhMDYwNWNjNzM2YmM4NmY1L3RhYmxlcmFuZ2U6ODMzY2Y0ZjU5YzdjNGYxOGEwNjA1Y2M3MzZiYzg2ZjVfOS0xLTEtMS0w_f9f236b9-dbe4-4b75-9df1-f2c61bd5ee17"
      unitRef="usd">173138000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDMvZnJhZzo0ZGYzZWU1NGExOGQ0Y2YxODJhMjg4OTE2NzY0NDhmYy90ZXh0cmVnaW9uOjRkZjNlZTU0YTE4ZDRjZjE4MmEyODg5MTY3NjQ0OGZjXzUy_2733343e-a41e-405c-8889-e1a2a182e410">INVENTORY &lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventory consist of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:72.692%"/&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.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Raw materials&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;10,140&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,197&#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:9pt;font-weight:400;line-height:100%"&gt;Finished goods&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:9pt;font-weight:400;line-height:100%"&gt;31,624&#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:9pt;font-weight:400;line-height:100%"&gt;27,859&#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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total inventory&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;41,764&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;32,056&#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:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDMvZnJhZzo0ZGYzZWU1NGExOGQ0Y2YxODJhMjg4OTE2NzY0NDhmYy90ZXh0cmVnaW9uOjRkZjNlZTU0YTE4ZDRjZjE4MmEyODg5MTY3NjQ0OGZjXzUw_009d5c39-6060-4856-9d41-c858554a008b">&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventory consist of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:72.692%"/&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.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Raw materials&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;10,140&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,197&#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:9pt;font-weight:400;line-height:100%"&gt;Finished goods&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:9pt;font-weight:400;line-height:100%"&gt;31,624&#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:9pt;font-weight:400;line-height:100%"&gt;27,859&#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 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total inventory&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;41,764&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;32,056&#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:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterials
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDMvZnJhZzo0ZGYzZWU1NGExOGQ0Y2YxODJhMjg4OTE2NzY0NDhmYy90YWJsZTowNmJlZjg2ZTU3NTU0NWJiYWNhZGY0NWU3NzIzYjA0Mi90YWJsZXJhbmdlOjA2YmVmODZlNTc1NTQ1YmJhY2FkZjQ1ZTc3MjNiMDQyXzMtMS0xLTEtMA_607580e1-8401-4afa-9c7d-11a40831b17e"
      unitRef="usd">10140000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDMvZnJhZzo0ZGYzZWU1NGExOGQ0Y2YxODJhMjg4OTE2NzY0NDhmYy90YWJsZTowNmJlZjg2ZTU3NTU0NWJiYWNhZGY0NWU3NzIzYjA0Mi90YWJsZXJhbmdlOjA2YmVmODZlNTc1NTQ1YmJhY2FkZjQ1ZTc3MjNiMDQyXzMtMy0xLTEtMA_27a1363b-4666-4e40-ae99-9cb7d3f206e4"
      unitRef="usd">4197000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryFinishedGoods
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDMvZnJhZzo0ZGYzZWU1NGExOGQ0Y2YxODJhMjg4OTE2NzY0NDhmYy90YWJsZTowNmJlZjg2ZTU3NTU0NWJiYWNhZGY0NWU3NzIzYjA0Mi90YWJsZXJhbmdlOjA2YmVmODZlNTc1NTQ1YmJhY2FkZjQ1ZTc3MjNiMDQyXzQtMS0xLTEtMA_bddfa720-0bc8-466b-a5eb-1ac20a8be9db"
      unitRef="usd">31624000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDMvZnJhZzo0ZGYzZWU1NGExOGQ0Y2YxODJhMjg4OTE2NzY0NDhmYy90YWJsZTowNmJlZjg2ZTU3NTU0NWJiYWNhZGY0NWU3NzIzYjA0Mi90YWJsZXJhbmdlOjA2YmVmODZlNTc1NTQ1YmJhY2FkZjQ1ZTc3MjNiMDQyXzQtMy0xLTEtMA_76166dd1-0f33-4b0a-a2f0-8d161843fc41"
      unitRef="usd">27859000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryNet
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDMvZnJhZzo0ZGYzZWU1NGExOGQ0Y2YxODJhMjg4OTE2NzY0NDhmYy90YWJsZTowNmJlZjg2ZTU3NTU0NWJiYWNhZGY0NWU3NzIzYjA0Mi90YWJsZXJhbmdlOjA2YmVmODZlNTc1NTQ1YmJhY2FkZjQ1ZTc3MjNiMDQyXzUtMS0xLTEtMA_7b9eae16-dcaa-4788-b0b2-68bd40c8aec5"
      unitRef="usd">41764000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDMvZnJhZzo0ZGYzZWU1NGExOGQ0Y2YxODJhMjg4OTE2NzY0NDhmYy90YWJsZTowNmJlZjg2ZTU3NTU0NWJiYWNhZGY0NWU3NzIzYjA0Mi90YWJsZXJhbmdlOjA2YmVmODZlNTc1NTQ1YmJhY2FkZjQ1ZTc3MjNiMDQyXzUtMy0xLTEtMA_72e2cc6b-21e4-4ac2-89ac-e78646eb5a24"
      unitRef="usd">32056000</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90ZXh0cmVnaW9uOmZiZThjM2YwMjY4ZjRjOTJhNTFkOTFlMjY5YTYzODllXzg3OTYwOTMwMjI1MDA_c25bc5ef-eecf-4320-85d0-8348923c0e49">PROPERTY AND EQUIPMENT, NET &lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment consist of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:54.747%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.104%"/&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.642%"/&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.647%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Estimated&#160;Useful &lt;br/&gt;Life&lt;/span&gt;&lt;/td&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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:8pt;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-bottom:1pt solid #000000;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:8pt;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="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(Years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Equipment and machinery&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3-10&lt;/span&gt;&lt;/div&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;63,411&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;48,114&#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:9pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5-10&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;2,532&#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:9pt;font-weight:400;line-height:100%"&gt;2,404&#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:9pt;font-weight:400;line-height:100%"&gt;Computer equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3-5&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;2,972&#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:9pt;font-weight:400;line-height:100%"&gt;1,698&#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:9pt;font-weight:400;line-height:100%"&gt;Capitalized software costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3-5&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;17,004&#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:9pt;font-weight:400;line-height:100%"&gt;11,656&#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:9pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3-10&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;9,021&#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:9pt;font-weight:400;line-height:100%"&gt;8,713&#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:9pt;font-weight:400;line-height:100%"&gt;Construction in process&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="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:9pt;font-weight:400;line-height:100%"&gt;9,747&#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:9pt;font-weight:400;line-height:100%"&gt;8,446&#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:9pt;font-weight:400;line-height:100%"&gt;Total&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="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:9pt;font-weight:400;line-height:100%"&gt;104,687&#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:9pt;font-weight:400;line-height:100%"&gt;81,031&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less accumulated depreciation and amortization&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="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:9pt;font-weight:400;line-height:100%"&gt;(61,702)&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:9pt;font-weight:400;line-height:100%"&gt;(52,095)&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:9pt;font-weight:400;line-height:100%"&gt;Property and equipment, net&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 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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;42,985&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;28,936&#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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Depreciation expense for property and equipment for the years ended December 31, 2020, 2019 and 2018 was $9.7&#160;million, $7.3&#160;million and $8.3&#160;million, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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, 2020 and 2019, unamortized capitalized software costs were $4.8&#160;million and $0.8&#160;million, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90ZXh0cmVnaW9uOmZiZThjM2YwMjY4ZjRjOTJhNTFkOTFlMjY5YTYzODllXzg3OTYwOTMwMjI1MDI_5118e7a7-9692-413a-b856-9513d05b1054">&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment consist of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:54.747%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.104%"/&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.642%"/&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.647%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Estimated&#160;Useful &lt;br/&gt;Life&lt;/span&gt;&lt;/td&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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:8pt;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-bottom:1pt solid #000000;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:8pt;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="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(Years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Equipment and machinery&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3-10&lt;/span&gt;&lt;/div&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;63,411&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;48,114&#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:9pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5-10&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;2,532&#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:9pt;font-weight:400;line-height:100%"&gt;2,404&#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:9pt;font-weight:400;line-height:100%"&gt;Computer equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3-5&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;2,972&#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:9pt;font-weight:400;line-height:100%"&gt;1,698&#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:9pt;font-weight:400;line-height:100%"&gt;Capitalized software costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3-5&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;17,004&#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:9pt;font-weight:400;line-height:100%"&gt;11,656&#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:9pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3-10&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;9,021&#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:9pt;font-weight:400;line-height:100%"&gt;8,713&#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:9pt;font-weight:400;line-height:100%"&gt;Construction in process&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="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:9pt;font-weight:400;line-height:100%"&gt;9,747&#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:9pt;font-weight:400;line-height:100%"&gt;8,446&#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:9pt;font-weight:400;line-height:100%"&gt;Total&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="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:9pt;font-weight:400;line-height:100%"&gt;104,687&#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:9pt;font-weight:400;line-height:100%"&gt;81,031&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less accumulated depreciation and amortization&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="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:9pt;font-weight:400;line-height:100%"&gt;(61,702)&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:9pt;font-weight:400;line-height:100%"&gt;(52,095)&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:9pt;font-weight:400;line-height:100%"&gt;Property and equipment, net&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 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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;42,985&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;28,936&#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:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ic633efcd4970478a9295f4dd29c88de2_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzMtMS0xLTEtMC90ZXh0cmVnaW9uOmZjMjVmNjdiMTdmZDQ5ZDQ4MmQ1YzkyODM2MTU1NzI2Xzg3OTYwOTMwMjIyMTc_ddd5f630-44f0-4f03-b765-fbeda7d831e9">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="idaa54b1e40914ef8a5cb137578d843be_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzMtMS0xLTEtMC90ZXh0cmVnaW9uOmZjMjVmNjdiMTdmZDQ5ZDQ4MmQ1YzkyODM2MTU1NzI2Xzg3OTYwOTMwMjIyMjI_8b3f5e3e-a761-447c-8a57-099cc52d659b">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="if1fe129676bd45c0becaa28f52bc50aa_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzMtMy0xLTEtMA_52c8dfcb-b3b4-4e2f-9289-01037d91d4cf"
      unitRef="usd">63411000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ifeef2c8dfe05488298a159686861ee0e_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzMtNS0xLTEtMA_fe3654d4-98f0-4663-903a-2c2cd02a335c"
      unitRef="usd">48114000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ica9976d20693428ba920b27006546602_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzQtMS0xLTEtMC90ZXh0cmVnaW9uOmE1MjYyYzAyOTczNjRiOTViZTE3OGYwODBlN2IzNTIzXzg3OTYwOTMwMjIyMTc_008c62a1-6e70-4b5b-a5bd-9613e7ec1ab2">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="if33f497e17b143688eb27d0508f7abd8_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzQtMS0xLTEtMC90ZXh0cmVnaW9uOmE1MjYyYzAyOTczNjRiOTViZTE3OGYwODBlN2IzNTIzXzg3OTYwOTMwMjIyMjI_9329c729-f6f0-4e47-a239-d4501641cbb0">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i91e6f5e31bf04cd0b1d8e3d97a4e67f5_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzQtMy0xLTEtMA_dc962870-135c-4645-83ba-8f2e4a40a49a"
      unitRef="usd">2532000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i3c1f48c4f8284c06a7677787c2d70e36_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzQtNS0xLTEtMA_0888a6d0-9f26-4cc1-89c6-b4e8c6d30f33"
      unitRef="usd">2404000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i549cd259846f493ab9fd4726b77ed61e_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzUtMS0xLTEtMC90ZXh0cmVnaW9uOjU3OWI0Y2FmMWVmZDQ3MTI4MzFiNWY0YWNkZjExMzVkXzg3OTYwOTMwMjIyMTY_4c062551-d0a1-43ce-ad98-1dbf1252797c">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="idb02a23e58a84f8ba879be4f010078d2_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzUtMS0xLTEtMC90ZXh0cmVnaW9uOjU3OWI0Y2FmMWVmZDQ3MTI4MzFiNWY0YWNkZjExMzVkXzg3OTYwOTMwMjIyMjA_c3299719-673a-4e55-acb1-6bc6f0957b68">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ice0cdf9f18d94c06839e281f740af817_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzUtMy0xLTEtMA_59ce65a2-9cc1-4593-966c-8b30f6989b98"
      unitRef="usd">2972000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="iea8e6280418e4431bb96425b4bd914cd_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzUtNS0xLTEtMA_9cdf79cf-355c-42cd-9d4b-2f660e4ef769"
      unitRef="usd">1698000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ifda2a63d705e4f9d9cc0bd1a8084e6d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzYtMS0xLTEtMC90ZXh0cmVnaW9uOjk4YTliNTQxNjNkNTRiZWY4YWY2ZDBiZmY2ZmI2Y2NiXzg3OTYwOTMwMjIyMTY_650646d8-5029-458b-86f0-568d56c9e565">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="if27d092a1ffd4b5b82f9bca93537c9d7_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzYtMS0xLTEtMC90ZXh0cmVnaW9uOjk4YTliNTQxNjNkNTRiZWY4YWY2ZDBiZmY2ZmI2Y2NiXzg3OTYwOTMwMjIyMjA_3bd2a102-1e61-46a4-a182-6e020ee3651f">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="iba7c40aff18146d2b89817f25ec404ce_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzYtMy0xLTEtMA_c13f3f67-ada6-46d0-8410-4aa75332ced8"
      unitRef="usd">17004000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="icb5118ea906d4f249d981ca9153d6bab_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzYtNS0xLTEtMA_6314c5f7-6421-433b-9fdd-66d2007daf11"
      unitRef="usd">11656000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i8eba0aa099944d3e8efcb154fdeaa541_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzctMS0xLTEtMC90ZXh0cmVnaW9uOmQ0ODA4MjE4ZmIwMDRiZTBhMjFlZjk1MjAzYjc3MDNkXzg3OTYwOTMwMjIyMTc_2777d80d-847a-4d4e-ab4d-c3f24e31fcf8">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i02b632f49daf47229232081b3c411ec3_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzctMS0xLTEtMC90ZXh0cmVnaW9uOmQ0ODA4MjE4ZmIwMDRiZTBhMjFlZjk1MjAzYjc3MDNkXzg3OTYwOTMwMjIyMjI_5528db33-59f0-43e5-acf1-7fb0fca0936a">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i8bdb4aa1dba542558147facefe6d7220_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzctMy0xLTEtMA_f8435aa2-c422-43a2-bf96-91c40cd7978e"
      unitRef="usd">9021000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="icf5a85e9be524424bee33a6d576ffe2e_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzctNS0xLTEtMA_58b1add6-c02b-4a4a-b956-2f41e1a7d52b"
      unitRef="usd">8713000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i36803c9c7aa34a839561368ab8dd1716_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzgtMy0xLTEtMA_5707f9ed-6a81-440c-999b-a4a3c6af695a"
      unitRef="usd">9747000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i8114e9cfa2954fd1a9d1c757d6d7ba83_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzgtNS0xLTEtMA_5e29f5b1-0193-4d85-afef-7edef1470a95"
      unitRef="usd">8446000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzktMy0xLTEtMA_1c5d2f1b-0653-4d92-bf9b-df2cb0696b4a"
      unitRef="usd">104687000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzktNS0xLTEtMA_980a2f54-3d32-4d02-8f6a-deb4e9b5c62e"
      unitRef="usd">81031000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzEwLTMtMS0xLTA_f8350cc7-4572-4794-8f2f-311cf41d9f52"
      unitRef="usd">61702000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzEwLTUtMS0xLTA_ba44d7dd-e206-4b96-b2c0-534729d6998d"
      unitRef="usd">52095000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzExLTMtMS0xLTA_9b249094-eb10-4628-b975-e658a2aca19f"
      unitRef="usd">42985000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90YWJsZTplMzkxY2FmNTY4ZjI0NGUwYWFhOTE4YTVhNDM5YjViNS90YWJsZXJhbmdlOmUzOTFjYWY1NjhmMjQ0ZTBhYWE5MThhNWE0MzliNWI1XzExLTUtMS0xLTA_4da05236-23a8-4175-a962-efdb399f35d9"
      unitRef="usd">28936000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Depreciation
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90ZXh0cmVnaW9uOmZiZThjM2YwMjY4ZjRjOTJhNTFkOTFlMjY5YTYzODllXzEzOA_0e311325-e665-461c-bf5c-835055bbc781"
      unitRef="usd">9700000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90ZXh0cmVnaW9uOmZiZThjM2YwMjY4ZjRjOTJhNTFkOTFlMjY5YTYzODllXzE0Mg_3be5ddf5-6940-4f1c-a4e8-96f8500a26ef"
      unitRef="usd">7300000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90ZXh0cmVnaW9uOmZiZThjM2YwMjY4ZjRjOTJhNTFkOTFlMjY5YTYzODllXzE0OQ_8fad5266-9974-4bed-815a-4d62f14cdb32"
      unitRef="usd">8300000</us-gaap:Depreciation>
    <us-gaap:CapitalizedComputerSoftwareNet
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90ZXh0cmVnaW9uOmZiZThjM2YwMjY4ZjRjOTJhNTFkOTFlMjY5YTYzODllXzIyOA_09c51e11-2e3d-433a-a039-3df9deaf1a5d"
      unitRef="usd">4800000</us-gaap:CapitalizedComputerSoftwareNet>
    <us-gaap:CapitalizedComputerSoftwareNet
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDkvZnJhZzpmYmU4YzNmMDI2OGY0YzkyYTUxZDkxZTI2OWE2Mzg5ZS90ZXh0cmVnaW9uOmZiZThjM2YwMjY4ZjRjOTJhNTFkOTFlMjY5YTYzODllXzIzNQ_667562f1-7fa7-4ee8-96ae-5e762d8bdd4d"
      unitRef="usd">800000</us-gaap:CapitalizedComputerSoftwareNet>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90ZXh0cmVnaW9uOjlkYTgwN2I2MTdmZjRkMjY4MTZiZDJkOTA2YTA2YjdhXzE2NDI_13f64540-ac89-413d-9ea2-544c77d198df">GOODWILL AND INTANGIBLE ASSETS &lt;div style="margin-top:6pt;text-indent:27pt"&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 goodwill and purchased intangible assets as of December&#160;31, 2020 and December&#160;31, 2019 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:19.806%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&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:9.572%"/&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:9.572%"/&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:9.572%"/&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 colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&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:9.572%"/&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:9.582%"/&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="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31, 2019&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:7pt;font-weight:700;line-height:100%"&gt;Gross&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-bottom:1pt solid #000000;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:7pt;font-weight:700;line-height:100%"&gt;Additions&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-bottom:1pt solid #000000;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:7pt;font-weight:700;line-height:100%"&gt;Accumulated Amortization&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-bottom:1pt solid #000000;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:7pt;font-weight:700;line-height:100%"&gt;Net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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:7pt;font-weight:700;line-height:100%"&gt;Gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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:7pt;font-weight:700;line-height:100%"&gt;Accumulated Amortization&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-bottom:1pt solid #000000;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:7pt;font-weight:700;line-height:100%"&gt;Net&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="39" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;24,783&#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:9pt;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:9pt;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:9pt;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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;24,783&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;24,783&#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:9pt;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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;24,783&#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 style="height:11pt"&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 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:4.5pt;text-indent:-4.5pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intangible assets:&lt;/span&gt;&lt;/div&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;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other indefinite-lived intangibles&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:9pt;font-weight:400;line-height:100%"&gt;286&#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:9pt;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 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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;286&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;286&#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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;286&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intangible assets with finite lives:&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;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Developed technology&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:9pt;font-weight:400;line-height:100%"&gt;13,100&#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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;(5,276)&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:9pt;font-weight:400;line-height:100%"&gt;7,824&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;13,100&#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:9pt;font-weight:400;line-height:100%"&gt;(3,093)&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:9pt;font-weight:400;line-height:100%"&gt;10,007&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Customer relationships&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:9pt;font-weight:400;line-height:100%"&gt;23,100&#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:9pt;font-weight:400;line-height:100%"&gt;3,321&#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:9pt;font-weight:400;line-height:100%"&gt;(5,723)&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:9pt;font-weight:400;line-height:100%"&gt;20,698&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;23,100&#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:9pt;font-weight:400;line-height:100%"&gt;(2,814)&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:9pt;font-weight:400;line-height:100%"&gt;20,286&#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 23.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total purchased intangible assets&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;36,486&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;3,321&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;(10,999)&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;28,808&#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 colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;36,486&#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;border-bottom:3pt double #000000;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;(5,907)&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;30,579&#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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortization expense related to finite-lived intangible assets are as follows:&lt;/span&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:71.359%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.302%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.303%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Developed technology, and patents and licensed technology&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,183&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,184&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;2,909&#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:9pt;font-weight:400;line-height:100%"&gt;2,543&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:15.75pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total amortization expense&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;5,092&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;4,727&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortization of developed technology, patents and licensed technology is recorded to sales and marketing expense. The developed technology acquired from the Company&#x2019;s acquisition of SunPower Corporation&#x2019;s (&#x201c;SunPower&#x201d;) microinverter business in August 2018 was embedded in the microinverters that SunPower sold to its customers. The Company does not actively use the developed technology acquired from SunPower and holds the developed technology to prevent others from using it. Accordingly, the Company accounts for the developed technology as a defensive intangible asset and amortizes the associated value over a period of six years from the date of acquisition. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The master supply agreement (&#x201c;MSA&#x201d;) entered into with SunPower in August&#160;2018 provides the Company with the exclusive right to supply SunPower with module level power electronics for a period of five years, with options for renewals. The exclusivity arrangement extends throughout the term of the MSA, which comprises all of the expected cash flows from the customer relationship intangible asset, and was a condition to, and was an essential part of the acquisition of SunPower&#x2019;s microinverter business by the Company. As the original $23.1&#160;million fair value ascribed to the customer relationship intangible asset represents payments to a customer, the Company amortizes the value of the customer relationship intangible asset as a reduction to revenue using a pattern of economic benefit method over a useful life of nine years. During the fourth quarter of 2020, the Company signed an amendment to the MSA which increased the period of exclusive right to supply by another three months, and the associated incremental non-cash $3.3 million fair value of equity is added to the customer relationship intangible asset will follow the same amortization pattern.&lt;/span&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90ZXh0cmVnaW9uOjlkYTgwN2I2MTdmZjRkMjY4MTZiZDJkOTA2YTA2YjdhXzE2NTI_07c81aea-785b-4b62-b233-aa20af534211">&lt;div style="margin-top:6pt;text-indent:27pt"&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 goodwill and purchased intangible assets as of December&#160;31, 2020 and December&#160;31, 2019 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:19.806%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&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:9.572%"/&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:9.572%"/&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:9.572%"/&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 colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.572%"/&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:9.572%"/&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:9.582%"/&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="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31, 2019&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:7pt;font-weight:700;line-height:100%"&gt;Gross&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-bottom:1pt solid #000000;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:7pt;font-weight:700;line-height:100%"&gt;Additions&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-bottom:1pt solid #000000;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:7pt;font-weight:700;line-height:100%"&gt;Accumulated Amortization&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-bottom:1pt solid #000000;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:7pt;font-weight:700;line-height:100%"&gt;Net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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:7pt;font-weight:700;line-height:100%"&gt;Gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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:7pt;font-weight:700;line-height:100%"&gt;Accumulated Amortization&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-bottom:1pt solid #000000;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:7pt;font-weight:700;line-height:100%"&gt;Net&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="39" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;24,783&#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:9pt;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:9pt;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:9pt;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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;24,783&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;24,783&#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:9pt;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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;24,783&#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 style="height:11pt"&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 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:4.5pt;text-indent:-4.5pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intangible assets:&lt;/span&gt;&lt;/div&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;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other indefinite-lived intangibles&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:9pt;font-weight:400;line-height:100%"&gt;286&#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:9pt;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 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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;286&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;286&#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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;286&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intangible assets with finite lives:&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;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Developed technology&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:9pt;font-weight:400;line-height:100%"&gt;13,100&#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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;(5,276)&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:9pt;font-weight:400;line-height:100%"&gt;7,824&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;13,100&#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:9pt;font-weight:400;line-height:100%"&gt;(3,093)&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:9pt;font-weight:400;line-height:100%"&gt;10,007&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Customer relationships&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:9pt;font-weight:400;line-height:100%"&gt;23,100&#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:9pt;font-weight:400;line-height:100%"&gt;3,321&#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:9pt;font-weight:400;line-height:100%"&gt;(5,723)&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:9pt;font-weight:400;line-height:100%"&gt;20,698&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;23,100&#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:9pt;font-weight:400;line-height:100%"&gt;(2,814)&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:9pt;font-weight:400;line-height:100%"&gt;20,286&#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 23.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total purchased intangible assets&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;36,486&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;3,321&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;(10,999)&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;28,808&#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 colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;36,486&#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;border-bottom:3pt double #000000;border-top:1pt solid #000000;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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;(5,907)&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;30,579&#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:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock>
    <us-gaap:GoodwillGross
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzMtMS0xLTEtMA_81d8241b-737a-4b7a-98d9-adf1e70b63fb"
      unitRef="usd">24783000</us-gaap:GoodwillGross>
    <us-gaap:Goodwill
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzMtNy0xLTEtMA_1b7466ea-bc52-43a6-9193-9d3fa999ae92"
      unitRef="usd">24783000</us-gaap:Goodwill>
    <us-gaap:GoodwillGross
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzMtMTMtMS0xLTA_f7c54abd-9dea-4891-8379-382635baf646"
      unitRef="usd">24783000</us-gaap:GoodwillGross>
    <us-gaap:Goodwill
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzMtMTctMS0xLTA_c3c919ce-ae8b-4ed8-920d-4937196d285b"
      unitRef="usd">24783000</us-gaap:Goodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzYtMS0xLTEtMA_5f10e819-8343-49e6-9804-6cc546afd975"
      unitRef="usd">286000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefinitelivedIntangibleAssetsAcquired
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzYtMy0xLTEtMA_2c5096c5-1ae6-482f-b021-035caadb7c9a"
      unitRef="usd">0</us-gaap:IndefinitelivedIntangibleAssetsAcquired>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzYtNy0xLTEtMA_ad6b0375-4dcf-4f8a-adde-aff714bad5ec"
      unitRef="usd">286000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzYtMTMtMS0xLTA_b4bd8334-b4b8-4e73-9c37-3c209e76d871"
      unitRef="usd">286000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzYtMTctMS0xLTA_14d2d005-377e-4383-aec8-47dfc0b1beea"
      unitRef="usd">286000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ia0ce92351e5a4949b3b463ca0f451fa8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEwLTEtMS0xLTA_08d9da7c-2271-47cf-9621-5b2d9f63d501"
      unitRef="usd">13100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="ia9f7fd1f22c0423194acd96954027bd6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEwLTMtMS0xLTA_d904d1c4-db79-4bd2-be16-60d34be0560a"
      unitRef="usd">0</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ia0ce92351e5a4949b3b463ca0f451fa8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEwLTUtMS0xLTA_80a4df1a-12e5-49c1-a249-ab8d46c1343c"
      unitRef="usd">5276000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ia0ce92351e5a4949b3b463ca0f451fa8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEwLTctMS0xLTA_9960d515-0f50-4178-a68f-6d2d98081dc2"
      unitRef="usd">7824000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i3bac52d7fedf424d813a754915f2da6f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEwLTEzLTEtMS0w_773e9ffd-a249-481c-932d-73c7b8261d49"
      unitRef="usd">13100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i3bac52d7fedf424d813a754915f2da6f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEwLTE1LTEtMS0w_512555fe-09ac-4794-83f7-267a14ba4166"
      unitRef="usd">3093000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i3bac52d7fedf424d813a754915f2da6f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEwLTE3LTEtMS0w_c1b6d215-e75b-4296-8319-a36b21561b9f"
      unitRef="usd">10007000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ida78421e620346699248cae013ecace8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzExLTEtMS0xLTA_684673b4-9f66-411b-882c-baf45ac2ca9d"
      unitRef="usd">23100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="ia35b450705e942f28e4a481e721d9d8a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzExLTMtMS0xLTA_d1dfd8d6-7e90-4476-bcc3-dd44f0499e5e"
      unitRef="usd">3321000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ida78421e620346699248cae013ecace8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzExLTUtMS0xLTA_20f0f3dd-2f2d-4360-88d5-acca40055f71"
      unitRef="usd">5723000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ida78421e620346699248cae013ecace8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzExLTctMS0xLTA_93a3b0ac-9704-4891-ad90-e7769b879a3c"
      unitRef="usd">20698000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i8f86549b9e9a4ccda8f10a17f3646535_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzExLTEzLTEtMS0w_7772eb11-8a30-411e-a7ea-fb41efd534c6"
      unitRef="usd">23100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i8f86549b9e9a4ccda8f10a17f3646535_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzExLTE1LTEtMS0w_947ae396-e79a-4c57-8d89-4d62d0ea3aed"
      unitRef="usd">2814000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i8f86549b9e9a4ccda8f10a17f3646535_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzExLTE3LTEtMS0w_becd0dc8-830c-493a-b5ce-085a5eaa6659"
      unitRef="usd">20286000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEyLTEtMS0xLTA_3e046261-f347-4e99-9578-f80e819bbf67"
      unitRef="usd">36486000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <enph:IntangibleAssetsAcquired
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEyLTMtMS0xLTA_94963893-10ef-4c22-b320-063992c23950"
      unitRef="usd">3321000</enph:IntangibleAssetsAcquired>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEyLTUtMS0xLTA_8467a55e-c2bc-45da-bb99-a444e1670884"
      unitRef="usd">10999000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEyLTctMS0xLTA_e800afa9-38c4-4bc8-9406-ab818856597f"
      unitRef="usd">28808000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEyLTEzLTEtMS0w_009e86a1-bc3b-4247-a3e5-4c8e9f46a590"
      unitRef="usd">36486000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEyLTE1LTEtMS0w_ce7a3cc8-f6c8-464c-83ba-917e741a4847"
      unitRef="usd">5907000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTo1YzMxZTFkODY0ZDI0NzNmOTBjZjJhZDhmY2U1ZWRkMS90YWJsZXJhbmdlOjVjMzFlMWQ4NjRkMjQ3M2Y5MGNmMmFkOGZjZTVlZGQxXzEyLTE3LTEtMS0w_2438d3a3-1085-4601-a91e-26cae733ca95"
      unitRef="usd">30579000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90ZXh0cmVnaW9uOjlkYTgwN2I2MTdmZjRkMjY4MTZiZDJkOTA2YTA2YjdhXzE2Mzg_3ac04758-38f6-478a-bdc7-d1e6fa49bdb3">&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortization expense related to finite-lived intangible assets are as follows:&lt;/span&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:71.359%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.302%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.303%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Developed technology, and patents and licensed technology&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,183&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,184&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;2,909&#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:9pt;font-weight:400;line-height:100%"&gt;2,543&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:15.75pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total amortization expense&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;5,092&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;4,727&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i8a39c745c2044aa0997a4ba03b1c9a05_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTpiZjhhZjQ0YzYyN2I0MDMyOGVkNWM1ZGYxY2VmODY3NS90YWJsZXJhbmdlOmJmOGFmNDRjNjI3YjQwMzI4ZWQ1YzVkZjFjZWY4Njc1XzMtNS0xLTEtMA_ac7d2e57-74c6-46df-abf9-ff26f165a0d5"
      unitRef="usd">2183000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i57b54946a23d4bbd91898f1c83daf2c4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTpiZjhhZjQ0YzYyN2I0MDMyOGVkNWM1ZGYxY2VmODY3NS90YWJsZXJhbmdlOmJmOGFmNDRjNjI3YjQwMzI4ZWQ1YzVkZjFjZWY4Njc1XzMtNy0xLTEtMA_fc83f39a-fcc3-428e-933d-2fb8f3b77109"
      unitRef="usd">2184000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="ia35b450705e942f28e4a481e721d9d8a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTpiZjhhZjQ0YzYyN2I0MDMyOGVkNWM1ZGYxY2VmODY3NS90YWJsZXJhbmdlOmJmOGFmNDRjNjI3YjQwMzI4ZWQ1YzVkZjFjZWY4Njc1XzQtNS0xLTEtMA_ccb0637f-79b9-4014-910d-6c473a32dd0c"
      unitRef="usd">2909000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i257a9f0920d24400b182be68c32e17bf_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTpiZjhhZjQ0YzYyN2I0MDMyOGVkNWM1ZGYxY2VmODY3NS90YWJsZXJhbmdlOmJmOGFmNDRjNjI3YjQwMzI4ZWQ1YzVkZjFjZWY4Njc1XzQtNy0xLTEtMA_f97326bb-e63a-4da5-9201-af9b374be322"
      unitRef="usd">2543000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTpiZjhhZjQ0YzYyN2I0MDMyOGVkNWM1ZGYxY2VmODY3NS90YWJsZXJhbmdlOmJmOGFmNDRjNjI3YjQwMzI4ZWQ1YzVkZjFjZWY4Njc1XzUtNS0xLTEtMA_1ab341c4-7987-4977-a6c1-b3c15a638037"
      unitRef="usd">5092000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90YWJsZTpiZjhhZjQ0YzYyN2I0MDMyOGVkNWM1ZGYxY2VmODY3NS90YWJsZXJhbmdlOmJmOGFmNDRjNjI3YjQwMzI4ZWQ1YzVkZjFjZWY4Njc1XzUtNy0xLTEtMA_2ab486f9-f805-4a5c-b0b9-74b69741d6ec"
      unitRef="usd">4727000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i48ad8ffbc8874dcfac449c4312d79eac_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90ZXh0cmVnaW9uOjlkYTgwN2I2MTdmZjRkMjY4MTZiZDJkOTA2YTA2YjdhXzgwOA_b7648369-e174-46b9-9476-1ebc21c2c7fb">P6Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <enph:BusinessCombinationSupplyAgreementPeriod
      contextRef="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90ZXh0cmVnaW9uOjlkYTgwN2I2MTdmZjRkMjY4MTZiZDJkOTA2YTA2YjdhXzEwMzc_c5f74e5b-84a2-4b24-ad18-8dd7fbd9e52c">P5Y</enph:BusinessCombinationSupplyAgreementPeriod>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ibd8059cf260947fb9be3585574d5c387_I20180809"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90ZXh0cmVnaW9uOjlkYTgwN2I2MTdmZjRkMjY4MTZiZDJkOTA2YTA2YjdhXzQ5NDc4MDIzMjc0MDk_bbdd7ae8-d916-46d3-99ca-45b51e283461"
      unitRef="usd">23100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i79eb7af78c024c54bd52de054491961e_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90ZXh0cmVnaW9uOjlkYTgwN2I2MTdmZjRkMjY4MTZiZDJkOTA2YTA2YjdhXzE2MzE_e07d35aa-735b-455f-9605-d8925b5ec79c">P9Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <enph:BusinessCombinationSupplyAgreementPeriod
      contextRef="i8ddf985280bc40f49ff93f04ee61864f_D20201001-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90ZXh0cmVnaW9uOjlkYTgwN2I2MTdmZjRkMjY4MTZiZDJkOTA2YTA2YjdhXzQ5NDc4MDIzMjc0NDg_019df696-ed86-4e4f-b74b-57672be02706">P3M</enph:BusinessCombinationSupplyAgreementPeriod>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="ia35b450705e942f28e4a481e721d9d8a_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTUvZnJhZzo5ZGE4MDdiNjE3ZmY0ZDI2ODE2YmQyZDkwNmEwNmI3YS90ZXh0cmVnaW9uOjlkYTgwN2I2MTdmZjRkMjY4MTZiZDJkOTA2YTA2YjdhXzQ5NDc4MDIzMjc1MDE_b0cb03c3-707d-462a-922a-cf1b1ddf9280"
      unitRef="usd">3300000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90ZXh0cmVnaW9uOjJlOWFlNjhlNjg5MDQzMDlhZDQyMmRkM2U1ODVhM2Y4XzQ5NDc4MDIzMjUwOTQ_1dcfcc5f-0e8c-4f34-b4d3-0e6f4e1b32f4">ACCRUED LIABILITIES &lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued liabilities consist of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:12pt;margin-top:5pt;text-align:center"&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:71.853%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.057%"/&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.060%"/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:100%"&gt;Salaries, commissions, incentive compensation and benefits&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;6,634&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,524&#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;Customer rebates and sales incentives&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:9pt;font-weight:400;line-height:100%"&gt;36,622&#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:9pt;font-weight:400;line-height:100%"&gt;24,198&#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;Freight&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:9pt;font-weight:400;line-height:100%"&gt;10,300&#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:9pt;font-weight:400;line-height:100%"&gt;4,908&#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;Operating lease liabilities, 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:9pt;font-weight:400;line-height:100%"&gt;4,542&#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:9pt;font-weight:400;line-height:100%"&gt;3,170&#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;Liability due to supply agreements&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:9pt;font-weight:400;line-height:100%"&gt;5,500&#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:9pt;font-weight:400;line-height:100%"&gt;1,729&#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;Other&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:9pt;font-weight:400;line-height:100%"&gt;12,944&#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:9pt;font-weight:400;line-height:100%"&gt;7,563&#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 7pt;text-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:#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;76,542&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;47,092&#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:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90ZXh0cmVnaW9uOjJlOWFlNjhlNjg5MDQzMDlhZDQyMmRkM2U1ODVhM2Y4XzQ5NDc4MDIzMjUwOTY_ea544e63-6182-4c21-a650-aa9560fc07b5">&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued liabilities consist of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:12pt;margin-top:5pt;text-align:center"&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:71.853%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.057%"/&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.060%"/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:100%"&gt;Salaries, commissions, incentive compensation and benefits&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;6,634&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,524&#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;Customer rebates and sales incentives&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:9pt;font-weight:400;line-height:100%"&gt;36,622&#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:9pt;font-weight:400;line-height:100%"&gt;24,198&#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;Freight&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:9pt;font-weight:400;line-height:100%"&gt;10,300&#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:9pt;font-weight:400;line-height:100%"&gt;4,908&#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;Operating lease liabilities, 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:9pt;font-weight:400;line-height:100%"&gt;4,542&#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:9pt;font-weight:400;line-height:100%"&gt;3,170&#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;Liability due to supply agreements&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:9pt;font-weight:400;line-height:100%"&gt;5,500&#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:9pt;font-weight:400;line-height:100%"&gt;1,729&#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;Other&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:9pt;font-weight:400;line-height:100%"&gt;12,944&#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:9pt;font-weight:400;line-height:100%"&gt;7,563&#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 7pt;text-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:#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;76,542&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;47,092&#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:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzItMS0xLTEtMA_e89ff032-360c-4c8e-8551-db6c85dc2bbf"
      unitRef="usd">6634000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzItMy0xLTEtMA_b281b79f-e50c-490c-84fb-14c889520af6"
      unitRef="usd">5524000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedMarketingCostsCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzMtMS0xLTEtMA_4433ec1f-a700-46f6-b0ba-3cd54360fd92"
      unitRef="usd">36622000</us-gaap:AccruedMarketingCostsCurrent>
    <us-gaap:AccruedMarketingCostsCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzMtMy0xLTEtMA_f7b6d239-b04e-44cd-911b-cf299789b4d1"
      unitRef="usd">24198000</us-gaap:AccruedMarketingCostsCurrent>
    <enph:AccruedFreightCosts
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzQtMS0xLTEtMA_5115e7f0-a508-4fea-bcda-0f217a9a32fb"
      unitRef="usd">10300000</enph:AccruedFreightCosts>
    <enph:AccruedFreightCosts
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzQtMy0xLTEtMA_1edf98f3-eaab-4674-b8a4-9f5556c685a0"
      unitRef="usd">4908000</enph:AccruedFreightCosts>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzUtMS0xLTEtMA_51cf5e66-0566-45b2-874d-fb8c586b0617"
      unitRef="usd">4542000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzUtMy0xLTEtMA_04d370cf-2c53-4ac5-8de9-428f906b533b"
      unitRef="usd">3170000</us-gaap:OperatingLeaseLiabilityCurrent>
    <enph:SupplyAgreementsLiabilityCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzYtMS0xLTEtODE5NA_a727f3f6-1bb7-4b93-b5cc-42528aab9abd"
      unitRef="usd">5500000</enph:SupplyAgreementsLiabilityCurrent>
    <enph:SupplyAgreementsLiabilityCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzYtMy0xLTEtODE5NA_20b0a143-adb3-4413-8f15-bfb782a4e2a4"
      unitRef="usd">1729000</enph:SupplyAgreementsLiabilityCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzYtMS0xLTEtMA_1d14d321-11a9-4717-af5b-060863bb08a8"
      unitRef="usd">12944000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzYtMy0xLTEtMA_9608f865-ea0d-4b40-a146-cc5e51c940df"
      unitRef="usd">7563000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzctMS0xLTEtMA_c993f707-a61e-4379-a758-17c0ac715ccc"
      unitRef="usd">76542000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMDYvZnJhZzoyZTlhZTY4ZTY4OTA0MzA5YWQ0MjJkZDNlNTg1YTNmOC90YWJsZToxYzMwYWUwOGYzMTY0YzA3YjgwYWE5YzRhYTI5MDM0YS90YWJsZXJhbmdlOjFjMzBhZTA4ZjMxNjRjMDdiODBhYTljNGFhMjkwMzRhXzctMy0xLTEtMA_d156fc5e-facc-46ed-8ecf-be574f38c028"
      unitRef="usd">47092000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:ProductWarrantyDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90ZXh0cmVnaW9uOjhkODQ0YTg0NDNkZDQxOTRhYzIyZDYxMzVlYjA3YWUzXzM0Mw_10473500-402c-489c-b8de-68dd903c9c29">WARRANTY OBLIGATIONS &lt;div style="margin-top:6pt;text-indent:27pt"&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 warranty activities were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:56.648%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.935%"/&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.622%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Warranty obligations, beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;37,098&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;31,294&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;29,816&#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:9pt;font-weight:400;line-height:100%"&gt;Accruals for warranties issued during period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;7,021&#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:9pt;font-weight:400;line-height:100%"&gt;5,244&#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:9pt;font-weight:400;line-height:100%"&gt;3,040&#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:9pt;font-weight:400;line-height:100%"&gt;Changes in estimates&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;9,954&#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:9pt;font-weight:400;line-height:100%"&gt;8,591&#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:9pt;font-weight:400;line-height:100%"&gt;6,515&#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:9pt;font-weight:400;line-height:100%"&gt;Settlements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;(12,811)&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:9pt;font-weight:400;line-height:100%"&gt;(10,881)&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:9pt;font-weight:400;line-height:100%"&gt;(8,579)&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:9pt;font-weight:400;line-height:100%"&gt;Increase due to accretion expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;3,255&#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:9pt;font-weight:400;line-height:100%"&gt;2,326&#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:9pt;font-weight:400;line-height:100%"&gt;1,989&#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:9pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;1,396&#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:9pt;font-weight:400;line-height:100%"&gt;524&#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:9pt;font-weight:400;line-height:100%"&gt;(1,487)&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:9pt;font-weight:400;line-height:100%"&gt;Warranty obligations, end of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;45,913&#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:9pt;font-weight:400;line-height:100%"&gt;37,098&#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:9pt;font-weight:400;line-height:100%"&gt;31,294&#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:9pt;font-weight:400;line-height:100%"&gt;Less: current portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;(11,260)&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:9pt;font-weight:400;line-height:100%"&gt;(10,078)&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:9pt;font-weight:400;line-height:100%"&gt;(8,083)&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:9pt;font-weight:400;line-height:100%"&gt;Noncurrent&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;34,653&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;27,020&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;23,211&#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-bottom:6pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Changes in Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On a quarterly basis, the Company uses the best and most complete underlying information available, following a consistent, systematic and rational methodology to determine its warranty obligations. The Company considers all available evidence to assess the reasonableness of all key assumptions underlying its estimated warranty obligations for each generation of microinverter. The changes in estimates discussed below resulted from consideration of new or additional information becoming available and subsequent developments. Changes in estimates included in the table above were comprised of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;2020&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In 2020, the Company recorded a $8.8&#160;million increase to warranty expense based on continuing analysis of field performance data and diagnostic root-cause failure analysis primarily relating to its prior generation products. The Company also recorded additional warranty expense of $1.2&#160;million related to unit costs for prior generation microinverter replacement driven by tariffs and labor reimbursement costs expected to be paid to third party installers performing replacement services.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In 2019, the Company recorded a $5.5&#160;million increase to warranty expense related to cost increases primarily driven by increased U.S. tariffs announced during 2019 for its products manufactured in China. The Company also recorded additional warranty expense of $3.1&#160;million based on continuing analysis of field performance data and diagnostic root-cause failure analysis primarily relating to its second and third generation products, partially offset by improved failure rates for its IQ7 series.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;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;2018&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 recorded a $0.9&#160;million increase to warranty expense related to cost increases primarily for backwards compatibility cables, supply constrained inventory components as well as tariffs. The Company also recorded additional warranty expense of&#160;$3.3&#160;million&#160;based on continuing analysis of field performance data and diagnostic root-cause failure analysis primarily relating to its second and third generation products. In addition, the Company recorded an increase of&#160;$2.1&#160;million&#160;related to increased estimated claim rates and an increase to warranty expense of&#160;$0.2&#160;million&#160;for labor reimbursement costs expected to be paid to third party installers performing replacement services. These increases were partially offset by a&#160;$1.5&#160;million&#160;reduction to warranty expense, presented as &#x201c;Other&#x201d; in the table above, related to changes in the discount rates for fair value accounting.&lt;/span&gt;&lt;/div&gt;</us-gaap:ProductWarrantyDisclosureTextBlock>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90ZXh0cmVnaW9uOjhkODQ0YTg0NDNkZDQxOTRhYzIyZDYxMzVlYjA3YWUzXzMzMg_96c18db2-f8b0-4b8c-b0aa-708da4da949b">&lt;div style="margin-top:6pt;text-indent:27pt"&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 warranty activities were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:56.648%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.935%"/&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.622%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Warranty obligations, beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;37,098&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;31,294&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;29,816&#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:9pt;font-weight:400;line-height:100%"&gt;Accruals for warranties issued during period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;7,021&#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:9pt;font-weight:400;line-height:100%"&gt;5,244&#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:9pt;font-weight:400;line-height:100%"&gt;3,040&#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:9pt;font-weight:400;line-height:100%"&gt;Changes in estimates&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;9,954&#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:9pt;font-weight:400;line-height:100%"&gt;8,591&#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:9pt;font-weight:400;line-height:100%"&gt;6,515&#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:9pt;font-weight:400;line-height:100%"&gt;Settlements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;(12,811)&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:9pt;font-weight:400;line-height:100%"&gt;(10,881)&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:9pt;font-weight:400;line-height:100%"&gt;(8,579)&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:9pt;font-weight:400;line-height:100%"&gt;Increase due to accretion expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;3,255&#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:9pt;font-weight:400;line-height:100%"&gt;2,326&#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:9pt;font-weight:400;line-height:100%"&gt;1,989&#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:9pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;1,396&#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:9pt;font-weight:400;line-height:100%"&gt;524&#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:9pt;font-weight:400;line-height:100%"&gt;(1,487)&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:9pt;font-weight:400;line-height:100%"&gt;Warranty obligations, end of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;45,913&#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:9pt;font-weight:400;line-height:100%"&gt;37,098&#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:9pt;font-weight:400;line-height:100%"&gt;31,294&#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:9pt;font-weight:400;line-height:100%"&gt;Less: current portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;(11,260)&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:9pt;font-weight:400;line-height:100%"&gt;(10,078)&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:9pt;font-weight:400;line-height:100%"&gt;(8,083)&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:9pt;font-weight:400;line-height:100%"&gt;Noncurrent&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;34,653&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;27,020&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;23,211&#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:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzMtNS0xLTEtMA_52a2a792-9580-4912-81a7-eaca86f538cb"
      unitRef="usd">37098000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzMtNy0xLTEtMA_8436541c-db73-440f-bb79-ed472fe63b9b"
      unitRef="usd">31294000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i313ff8cf793547cfaaab91c7ecbea720_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzMtOS0xLTEtMA_45b44386-c3d9-4f8b-ba4c-9e6c6db2688c"
      unitRef="usd">29816000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzQtNS0xLTEtMA_ea3c26d7-254e-4bb4-8a96-6d1e75b425ad"
      unitRef="usd">7021000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzQtNy0xLTEtMA_27b9a82c-70cf-4723-82b1-39ab1a045b2e"
      unitRef="usd">5244000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzQtOS0xLTEtMA_668c30fa-0c1b-45aa-9768-9794b23c8d57"
      unitRef="usd">3040000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzUtNS0xLTEtMA_00dbd850-74bc-4ff7-bf55-281f076f38e5"
      unitRef="usd">9954000</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzUtNy0xLTEtMA_778d59c3-2876-4910-9c53-5604b91aaf71"
      unitRef="usd">8591000</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzUtOS0xLTEtMA_cb218cce-d5fc-4d7f-afe4-70f379b25119"
      unitRef="usd">6515000</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzYtNS0xLTEtMA_34d9821a-b410-4cc6-9861-5068ab7d363a"
      unitRef="usd">12811000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzYtNy0xLTEtMA_45a430ab-8be0-452d-ba1d-f38ac81e0f38"
      unitRef="usd">10881000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzYtOS0xLTEtMA_8a2ced0e-f78c-42a4-a0c4-3b3b5c5edacc"
      unitRef="usd">8579000</us-gaap:StandardProductWarrantyAccrualPayments>
    <enph:ProductWarrantyAccrualAccretionExpense
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzctNS0xLTEtMA_d15ee90e-872b-43df-8456-b54d37c4f576"
      unitRef="usd">3255000</enph:ProductWarrantyAccrualAccretionExpense>
    <enph:ProductWarrantyAccrualAccretionExpense
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzctNy0xLTEtMA_db92b22f-ad35-4f3a-be58-f6f5657ca732"
      unitRef="usd">2326000</enph:ProductWarrantyAccrualAccretionExpense>
    <enph:ProductWarrantyAccrualAccretionExpense
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzctOS0xLTEtMA_35452fc3-972f-432a-b1a5-cb8212b3f97c"
      unitRef="usd">1989000</enph:ProductWarrantyAccrualAccretionExpense>
    <enph:StandardAndExtendedProductWarrantyAccrualOtherPeriodIncreaseDecrease
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzgtNS0xLTEtMA_518a73a1-828b-438f-a611-ca1be2f60e35"
      unitRef="usd">1396000</enph:StandardAndExtendedProductWarrantyAccrualOtherPeriodIncreaseDecrease>
    <enph:StandardAndExtendedProductWarrantyAccrualOtherPeriodIncreaseDecrease
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzgtNy0xLTEtMA_1be2ed72-bf24-45ad-9f38-48e0a29268dc"
      unitRef="usd">524000</enph:StandardAndExtendedProductWarrantyAccrualOtherPeriodIncreaseDecrease>
    <enph:StandardAndExtendedProductWarrantyAccrualOtherPeriodIncreaseDecrease
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzgtOS0xLTEtMA_579e97b5-4cdb-49da-ac90-16400b0954e5"
      unitRef="usd">-1487000</enph:StandardAndExtendedProductWarrantyAccrualOtherPeriodIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzktNS0xLTEtMA_e09baedb-7d23-455b-8bf3-e3781c6deead"
      unitRef="usd">45913000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzktNy0xLTEtMA_e8189f42-c623-4c0d-8a09-345bf3cad154"
      unitRef="usd">37098000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzktOS0xLTEtMA_368c1b6a-4ecd-4ca1-9fa5-5e7b41349a27"
      unitRef="usd">31294000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzEwLTUtMS0xLTA_0912f423-2770-4f00-8998-1307c38ed34a"
      unitRef="usd">11260000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzEwLTctMS0xLTA_c06e2cd0-97d4-4a28-8f7f-2aada41ce539"
      unitRef="usd">10078000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzEwLTktMS0xLTA_f0fee00a-06e0-4815-862a-f177e9c17d25"
      unitRef="usd">8083000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzExLTUtMS0xLTA_94e9ef8f-d990-4167-9acb-ad64220bd267"
      unitRef="usd">34653000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzExLTctMS0xLTA_7620ff40-d42c-478b-8ec0-eaeba78a9dc9"
      unitRef="usd">27020000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMTgvZnJhZzo4ZDg0NGE4NDQzZGQ0MTk0YWMyMmQ2MTM1ZWIwN2FlMy90YWJsZTowZTVmOGIxMDZlMmY0OTAyYTMyYWI3ZDRkNDgwYTQ2OS90YWJsZXJhbmdlOjBlNWY4YjEwNmUyZjQ5MDJhMzJhYjdkNGQ0ODBhNDY5XzExLTktMS0xLTA_be701ab3-accd-4ab9-8e6e-a59301f3bca8"
      unitRef="usd">23211000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="id3da627f86bc4b8184a1d004e94f1deb_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMjQvZnJhZzpkYjQwNzYwMDA1ZWQ0MGM4OWJjMzIyMGE1Mzg1ODZmMC90ZXh0cmVnaW9uOmRiNDA3NjAwMDVlZDQwYzg5YmMzMjIwYTUzODU4NmYwXzY3MQ_ed24df70-c5d5-4ce2-b0e0-517a3392e879"
      unitRef="usd">8800000</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i29f23aafd7804d4ca5fc3fc72a45418a_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMjQvZnJhZzpkYjQwNzYwMDA1ZWQ0MGM4OWJjMzIyMGE1Mzg1ODZmMC90ZXh0cmVnaW9uOmRiNDA3NjAwMDVlZDQwYzg5YmMzMjIwYTUzODU4NmYwXzU0OTc1NTgxNDU2Mzc_785562bd-1740-4537-b0d2-5066d9f7b2b3"
      unitRef="usd">1200000</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i2473c23286bb453ab46401c0ea9bf966_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMjQvZnJhZzpkYjQwNzYwMDA1ZWQ0MGM4OWJjMzIyMGE1Mzg1ODZmMC90ZXh0cmVnaW9uOmRiNDA3NjAwMDVlZDQwYzg5YmMzMjIwYTUzODU4NmYwXzU0OTc1NTgxNDUzMzc_b75f6fb1-02d0-453a-b2c5-0d234bcf5e32"
      unitRef="usd">5500000</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i08c5cb96347b46849c043c82b3689a6d_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMjQvZnJhZzpkYjQwNzYwMDA1ZWQ0MGM4OWJjMzIyMGE1Mzg1ODZmMC90ZXh0cmVnaW9uOmRiNDA3NjAwMDVlZDQwYzg5YmMzMjIwYTUzODU4NmYwXzU0OTc1NTgxNDUzNDQ_777dfd39-3064-4cc5-a60d-ad6ce12e3647"
      unitRef="usd">3100000</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="iaed474da7189492792943413c99025ff_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMjQvZnJhZzpkYjQwNzYwMDA1ZWQ0MGM4OWJjMzIyMGE1Mzg1ODZmMC90ZXh0cmVnaW9uOmRiNDA3NjAwMDVlZDQwYzg5YmMzMjIwYTUzODU4NmYwXzU0OTc1NTgxNDU3NjQ_d8089403-515e-44df-98c2-a487a4e9e8a8"
      unitRef="usd">900000</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="ia706d026f023488baf44ccc3fd69b4fa_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMjQvZnJhZzpkYjQwNzYwMDA1ZWQ0MGM4OWJjMzIyMGE1Mzg1ODZmMC90ZXh0cmVnaW9uOmRiNDA3NjAwMDVlZDQwYzg5YmMzMjIwYTUzODU4NmYwXzU0OTc1NTgxNDU3NTA_75238b65-973c-49e0-a011-c91577264db2"
      unitRef="usd">3300000</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="ida937db624484a4db18ecb75478b81d1_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMjQvZnJhZzpkYjQwNzYwMDA1ZWQ0MGM4OWJjMzIyMGE1Mzg1ODZmMC90ZXh0cmVnaW9uOmRiNDA3NjAwMDVlZDQwYzg5YmMzMjIwYTUzODU4NmYwXzU0OTc1NTgxNDU3MzY_ae66da96-41da-443e-80e9-15b398eb5481"
      unitRef="usd">2100000</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i2269ef17f65340bda153b02205d5418c_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMjQvZnJhZzpkYjQwNzYwMDA1ZWQ0MGM4OWJjMzIyMGE1Mzg1ODZmMC90ZXh0cmVnaW9uOmRiNDA3NjAwMDVlZDQwYzg5YmMzMjIwYTUzODU4NmYwXzU0OTc1NTgxNDU3MjI_8d299aeb-e65b-460c-aa11-7a4dd1d6fdcd"
      unitRef="usd">200000</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i154592d49dac41ad9001e8a924ee3f71_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMjQvZnJhZzpkYjQwNzYwMDA1ZWQ0MGM4OWJjMzIyMGE1Mzg1ODZmMC90ZXh0cmVnaW9uOmRiNDA3NjAwMDVlZDQwYzg5YmMzMjIwYTUzODU4NmYwXzU0OTc1NTgxNDU3MDg_9714e576-a2c1-45d7-a361-3b3803f9cde7"
      unitRef="usd">1500000</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzY5NzA_6cbc97e2-41d0-49eb-96fe-6c5ca07d6cc9">FAIR VALUE MEASUREMENTS &lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The accounting guidance defines fair value as the price that would be received from selling an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. When determining the fair value measurements for assets and liabilities recorded at fair value, the Company considers the principal or most advantageous market in which it would transact and considers assumptions that market participants would use when pricing the asset or liability, such as inherent risk, transfer restrictions, and risk of nonperformance.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value hierarchy requires an entity to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. An asset&#x2019;s or liability&#x2019;s categorization within the fair value hierarchy is based upon the lowest level of input that is significant to the fair value measurement. Three levels of inputs may be used to measure fair value:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 1 - Valuations based on quoted prices in active markets for identical assets or liabilities that the Company is able to access. Since valuations are based on quoted prices that are readily and regularly available in an active market, valuation of such assets or liabilities do not entail a significant degree of judgment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 2 - Valuations based on one or more quoted prices in markets that are not active or for which all significant inputs are observable, either directly or indirectly.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 3 - Valuations based on inputs that are unobservable and significant to the overall fair value measurement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Level 1. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company considers all highly liquid investments, such as certificates of deposit and money market instruments with maturities of three months or less at the time of acquisition to be cash equivalents. For all periods presented, its cash balances consist of amounts held in non-interest-bearing and interest-bearing deposits and money market accounts and are within Level 1 of the fair value hierarchy because they are valued using quoted market prices for identical instruments in active markets. As of December&#160;31, 2020, cash and cash equivalents balance includes money market funds of $654.7 million.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Level 2.&lt;/span&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;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Convertible Notes due 2025 Derivatives.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On March&#160;9, 2020, the Company issued $320 million aggregate principal amount of 0.25% convertible senior notes due 2025 (the &#x201c;Notes due 2025&#x201d;). Concurrently with the issuance of Notes due 2025, the Company entered into privately-negotiated convertible note hedge and warrant transactions which in combination are intended to reduce the potential dilution from the conversion of the Notes due 2025. On May&#160;20, 2020, at the Company&#x2019;s annual meeting of stockholders, the stockholders approved an amendment to its certificate of incorporation to increase the number of authorized shares of the Company&#x2019;s common stock. As a result, the Company satisfied the share reservation condition (as defined in the relevant indenture associated with the Notes due 2025). The Company will now be able to settle the Notes due 2025, convertible notes hedge and warrants through payment or delivery, as the case may be, of cash, shares of its common stock or a combination thereof, at the Company&#x2019;s election. Accordingly, on May&#160;20, 2020, the embedded derivative liability, convertible notes hedge and warrants liability were remeasured at a fair value of $116.3 million, $117.1 million and $96.4 million, respectively, and were then reclassified to additional paid-in-capital in the condensed consolidated balance sheet in the second quarter of 2020 and are no longer remeasured as long as they continue to meet the conditions for equity classification. See Note 11. &#x201c;Debt&#x201d; for additional information related to these transactions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 Convertible notes embedded derivative was estimated using Binomial Lattice model and the fair value of Convertible notes hedge and Warrants liability was estimated using Black-Scholes-Merton model. The significant observable inputs, either directly or indirectly, and assumptions used in the models to calculate the fair value of the derivatives include the Company&#x2019;s common stock price, exercise price of the derivatives, risk-free interest rate, volatility, annual coupon rate and remaining contractual term.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Notes due 2025 &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;and&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt; Notes due 2024. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company carries the Notes due 2025&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;and&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Notes due 2024 (as defined below) at face value less unamortized discount and issuance costs on its consolidated balance sheets. The fair value of the Notes due 2025 and Notes due 2024 was $725.5 million and $747.1 million, respectively, as of December 31, 2020 based on the closing trading prices per $100 principal amount as of the last day of trading for the period. The Company considers the fair value of the Notes due 2025 and Notes due 2024 to be a Level 2 measurement as they are not actively traded.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Level 3.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Equity investments without readily determinable fair value.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In December 2020, the Company invested approximately $5.0&#160;million in a privately-held company without readily determinable market value, which is included in &#x201c;Other assets&#x201d; in the consolidated balance sheet. The Company has elected the measurement alternative for equity investments that do not have readily determinable fair values. The Company did not record an impairment charge on its investment during the year ended December&#160;31, 2020, as no events or changes in circumstances were identified which could result as an indicator for impairment. Further, there were no observable price changes in orderly transactions for the identical or a similar investment of the same issuer during the year ended December&#160;31, 2020. Equity investments without readily determinable fair value are classified within Level 3 in the fair value hierarchy because the Company estimates the value based on valuation methods using a combination of observable and unobservable inputs including valuation ascribed to the issuing company in subsequent financing rounds, volatility in the results of operations of the issuers and rights and obligations of the securities the Company holds. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Warranty Obligations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the Company&#x2019;s warranty obligations that were measured at fair value on a recurring basis and its categorization within the fair value hierarchy.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:3pt;margin-top:5pt;text-align:center"&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:72.730%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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 colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31, 2019&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;Level 3&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:700;line-height:100%"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Warranty obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,267&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;6,794&#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 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Non-current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;20,469&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;13,012&#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 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total warranty obligations measured at fair value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;28,736&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;19,806&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total liabilities measured at fair value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:700;line-height:100%"&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:9pt;font-weight:700;line-height:100%"&gt;28,736&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#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 colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:700;line-height:100%"&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:9pt;font-weight:700;line-height:100%"&gt;19,806&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#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;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Fair Value Option for Warranty Obligations Related to Microinverters and Other Products Sold Since January 1, 2014 &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;text-align:justify;text-indent:27pt"&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 value of warranty obligations by calculating the warranty obligations in the same manner as for sales prior to January 1, 2014 and applying an expected present value technique to that result. The expected present value technique, an income approach, converts future amounts into a single current discounted amount. In addition to the key estimates of failure rates, claim rates and replacement costs, the Company used certain Level 3 inputs which are unobservable and significant to the overall fair value measurement. Such additional assumptions included a discount rate based on the Company&#x2019;s credit-adjusted risk-free rate and compensation comprised of a profit element and risk premium required of a market participant to assume the obligation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides information regarding changes in nonfinancial liabilities related to the Company&#x2019;s warranty obligations measured at fair value on a recurring basis using significant unobservable inputs (Level 3) for the periods indicated.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:56.648%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.935%"/&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.622%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Balance at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19,806&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;11,757&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9,791&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accruals for warranties issued during period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;7,021&#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:9pt;font-weight:400;line-height:100%"&gt;5,244&#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:9pt;font-weight:400;line-height:100%"&gt;3,040&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Changes in estimates&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;5,039&#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:9pt;font-weight:400;line-height:100%"&gt;6,167&#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:9pt;font-weight:400;line-height:100%"&gt;2,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 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Settlements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;(7,781)&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:9pt;font-weight:400;line-height:100%"&gt;(6,212)&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:9pt;font-weight:400;line-height:100%"&gt;(4,030)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Increase due to accretion expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;3,255&#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:9pt;font-weight:400;line-height:100%"&gt;2,326&#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:9pt;font-weight:400;line-height:100%"&gt;1,989&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;1,396&#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:9pt;font-weight:400;line-height:100%"&gt;524&#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:9pt;font-weight:400;line-height:100%"&gt;(1,488)&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:9pt;font-weight:400;line-height:100%"&gt;Balance at end of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;28,736&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;19,806&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;11,757&#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-bottom:6pt;margin-top:9pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Quantitative and Qualitative Information about Level 3 Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&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, 2020 and December&#160;31, 2019, the significant unobservable inputs used in the fair value measurement of the Company&#x2019;s liabilities designated as Level 3 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.122%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.071%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.386%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.628%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.731%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.736%"/&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: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="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Percent Used&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;(Weighted Average)&lt;/span&gt;&lt;/div&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:8pt;font-weight:700;line-height:100%"&gt;Item Measured at Fair Value&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:8pt;font-weight:700;line-height:100%"&gt;Valuation Technique&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:8pt;font-weight:700;line-height:100%"&gt;Description of Significant Unobservable Input&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Warranty obligations for microinverters sold since January 1, 2014&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Discounted cash flows&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Profit element and risk premium&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;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15%&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;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;14%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #acacac;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Credit-adjusted risk-free rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #acacac;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #acacac;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #acacac;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #acacac;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Sensitivity of Level 3 Inputs - Warranty Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Each of the significant unobservable inputs is independent of the other. The profit element and risk premium are estimated based on requirements of a third-party participant willing to assume the Company&#x2019;s warranty obligations. The credit&#x2011;adjusted risk&#x2011;free rate (&#x201c;discount rate&#x201d;) is determined by reference to the Company&#x2019;s own credit standing at the fair value measurement date. Increasing the profit element and risk premium input by 100&#160;basis points would result in a $0.2&#160;million increase to the liability. Decreasing the profit element and risk premium by 100&#160;basis points would result in a $0.2&#160;million reduction of the liability. Increasing the discount rate by 100&#160;basis points would result in a $1.4&#160;million reduction of the liability. Decreasing the discount rate by 100&#160;basis points would result in a $1.6&#160;million increase to the liability.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:FairValueMeasurementPolicyPolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzY5Nzc_eadc3dff-59d3-4912-a78d-6214d959252b">&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The accounting guidance defines fair value as the price that would be received from selling an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. When determining the fair value measurements for assets and liabilities recorded at fair value, the Company considers the principal or most advantageous market in which it would transact and considers assumptions that market participants would use when pricing the asset or liability, such as inherent risk, transfer restrictions, and risk of nonperformance.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value hierarchy requires an entity to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. An asset&#x2019;s or liability&#x2019;s categorization within the fair value hierarchy is based upon the lowest level of input that is significant to the fair value measurement. Three levels of inputs may be used to measure fair value:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 1 - Valuations based on quoted prices in active markets for identical assets or liabilities that the Company is able to access. Since valuations are based on quoted prices that are readily and regularly available in an active market, valuation of such assets or liabilities do not entail a significant degree of judgment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 2 - Valuations based on one or more quoted prices in markets that are not active or for which all significant inputs are observable, either directly or indirectly.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 3 - Valuations based on inputs that are unobservable and significant to the overall fair value measurement.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueMeasurementPolicyPolicyTextBlock>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i89050755ddf4418a806996c63ef626ad_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzIxNTQ_7c8c2bdf-63cd-4376-825c-750955d382bf"
      unitRef="usd">654700000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzIyMjE_b5c567da-92fb-4388-8f26-5d50511fe3c1"
      unitRef="usd">320000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzIyNTQ_60b31652-bcbc-42ee-8222-2093c1358543"
      unitRef="number">0.0025</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability
      contextRef="ieba3e8451fe84002ba85c9ed20cdfcde_I20200520"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzMyMjg_887a10cd-edfd-4c70-8c41-8d7d43e80ef4"
      unitRef="usd">116300000</us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability>
    <us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability
      contextRef="i6685c6abcaca4b288831b8a845b82d40_I20200520"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzMyMzI_66dd2e41-5112-4486-af82-f4dec632fd41"
      unitRef="usd">117100000</us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability>
    <us-gaap:WarrantsAndRightsOutstanding
      contextRef="i59806dc2bf06478da777591b1851b53c_I20200520"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzMyMzk_06302f66-7bf0-41c0-8f16-a575107b3671"
      unitRef="usd">96400000</us-gaap:WarrantsAndRightsOutstanding>
    <us-gaap:NotesPayableFairValueDisclosure
      contextRef="i13fef4773a1d41418900202b53492efd_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzQzMDc_f9335b57-80db-4422-8dea-4af72825528b"
      unitRef="usd">725500000</us-gaap:NotesPayableFairValueDisclosure>
    <us-gaap:NotesPayableFairValueDisclosure
      contextRef="i2aa8f5c59884422f92f393dc5ee9f09a_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzQzMTQ_af9a97b1-399f-4a96-9419-f1dd79cb1691"
      unitRef="usd">747100000</us-gaap:NotesPayableFairValueDisclosure>
    <us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueAmount
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzQ5NDc4MDIzMzM3OTk_ba1e50f7-abcb-4cc4-bb61-3af327e5cd9d"
      unitRef="usd">5000000.0</us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueAmount>
    <us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzY5OTA_dc71db97-8019-4019-805b-a213ceeffb60">&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the Company&#x2019;s warranty obligations that were measured at fair value on a recurring basis and its categorization within the fair value hierarchy.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:3pt;margin-top:5pt;text-align:center"&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:72.730%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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 colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31, 2019&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;Level 3&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:700;line-height:100%"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Warranty obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;8,267&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;6,794&#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 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Non-current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;20,469&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;13,012&#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 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total warranty obligations measured at fair value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;28,736&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;19,806&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total liabilities measured at fair value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:700;line-height:100%"&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:9pt;font-weight:700;line-height:100%"&gt;28,736&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#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 colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:700;line-height:100%"&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:9pt;font-weight:700;line-height:100%"&gt;19,806&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#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;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the fair value and the change in fair value for the Convertible notes hedge asset and Warrants liability:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.770%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.596%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.598%"/&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:8pt;font-weight:700;line-height:100%"&gt;Convertible notes hedge&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Warrants liability&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fair value as of March 9, 2020&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;89,056&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;71,552&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Change in the fair value&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:9pt;font-weight:400;line-height:100%"&gt;28,052&#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:9pt;font-weight:400;line-height:100%"&gt;24,799&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fair value as of May 20, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;117,108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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 #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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;96,351&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="i1439af592e624d169b06796d7e47100a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTo0ZTdhMzljMWI3MWY0YWI4YWFjY2UyZDYxNjEyNGE1My90YWJsZXJhbmdlOjRlN2EzOWMxYjcxZjRhYjhhYWNjZTJkNjE2MTI0YTUzXzE5LTUtMS0xLTA_ad6c665e-d1c7-4f72-8eb6-21663a2da6b4"
      unitRef="usd">8267000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="ic9b3c80d25c34617bc8fba16f1349579_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTo0ZTdhMzljMWI3MWY0YWI4YWFjY2UyZDYxNjEyNGE1My90YWJsZXJhbmdlOjRlN2EzOWMxYjcxZjRhYjhhYWNjZTJkNjE2MTI0YTUzXzE5LTExLTEtMS0w_740c5a37-e8b2-4e46-b453-ad2569efeec9"
      unitRef="usd">6794000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="i1439af592e624d169b06796d7e47100a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTo0ZTdhMzljMWI3MWY0YWI4YWFjY2UyZDYxNjEyNGE1My90YWJsZXJhbmdlOjRlN2EzOWMxYjcxZjRhYjhhYWNjZTJkNjE2MTI0YTUzXzIwLTUtMS0xLTA_4e3cdd86-68e6-4401-9c42-5d03833be85d"
      unitRef="usd">20469000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="ic9b3c80d25c34617bc8fba16f1349579_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTo0ZTdhMzljMWI3MWY0YWI4YWFjY2UyZDYxNjEyNGE1My90YWJsZXJhbmdlOjRlN2EzOWMxYjcxZjRhYjhhYWNjZTJkNjE2MTI0YTUzXzIwLTExLTEtMS0w_0bace42d-62fc-45ee-86ca-923731626cf8"
      unitRef="usd">13012000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i1439af592e624d169b06796d7e47100a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTo0ZTdhMzljMWI3MWY0YWI4YWFjY2UyZDYxNjEyNGE1My90YWJsZXJhbmdlOjRlN2EzOWMxYjcxZjRhYjhhYWNjZTJkNjE2MTI0YTUzXzIxLTUtMS0xLTA_c1a4bf2d-8d58-4e50-b276-2b77f6037b2e"
      unitRef="usd">28736000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="ic9b3c80d25c34617bc8fba16f1349579_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTo0ZTdhMzljMWI3MWY0YWI4YWFjY2UyZDYxNjEyNGE1My90YWJsZXJhbmdlOjRlN2EzOWMxYjcxZjRhYjhhYWNjZTJkNjE2MTI0YTUzXzIxLTExLTEtMS0w_9a20c2dd-cd44-4233-9b5e-8434145c54b5"
      unitRef="usd">19806000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="i1439af592e624d169b06796d7e47100a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTo0ZTdhMzljMWI3MWY0YWI4YWFjY2UyZDYxNjEyNGE1My90YWJsZXJhbmdlOjRlN2EzOWMxYjcxZjRhYjhhYWNjZTJkNjE2MTI0YTUzXzIyLTUtMS0xLTA_dd9844b5-769e-4c05-9a50-5e4bcbde84f1"
      unitRef="usd">28736000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="ic9b3c80d25c34617bc8fba16f1349579_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTo0ZTdhMzljMWI3MWY0YWI4YWFjY2UyZDYxNjEyNGE1My90YWJsZXJhbmdlOjRlN2EzOWMxYjcxZjRhYjhhYWNjZTJkNjE2MTI0YTUzXzIyLTExLTEtMS0w_870e0229-49d9-4ae1-9651-8465a0c9708a"
      unitRef="usd">19806000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzY5NzQ_ca3ba81d-ce2c-4351-a7fa-dca0b19e325c">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides information regarding changes in nonfinancial liabilities related to the Company&#x2019;s warranty obligations measured at fair value on a recurring basis using significant unobservable inputs (Level 3) for the periods indicated.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:56.648%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.935%"/&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.622%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Balance at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19,806&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;11,757&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9,791&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accruals for warranties issued during period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;7,021&#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:9pt;font-weight:400;line-height:100%"&gt;5,244&#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:9pt;font-weight:400;line-height:100%"&gt;3,040&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Changes in estimates&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;5,039&#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:9pt;font-weight:400;line-height:100%"&gt;6,167&#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:9pt;font-weight:400;line-height:100%"&gt;2,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 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Settlements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;(7,781)&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:9pt;font-weight:400;line-height:100%"&gt;(6,212)&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:9pt;font-weight:400;line-height:100%"&gt;(4,030)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Increase due to accretion expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;3,255&#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:9pt;font-weight:400;line-height:100%"&gt;2,326&#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:9pt;font-weight:400;line-height:100%"&gt;1,989&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;1,396&#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:9pt;font-weight:400;line-height:100%"&gt;524&#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:9pt;font-weight:400;line-height:100%"&gt;(1,488)&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:9pt;font-weight:400;line-height:100%"&gt;Balance at end of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;28,736&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;19,806&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;11,757&#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:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="i525a6e07daed4ac984932cee0fe48aba_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzMtNS0xLTEtMA_7bb0a61b-d00c-4736-9d4f-28cdd178b3e9"
      unitRef="usd">19806000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="i52fd9893ed1c431bbb9670829fe5d4d4_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzMtNy0xLTEtMA_47d8eb94-7fad-4f84-bf78-1f815de2640a"
      unitRef="usd">11757000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="id83eaf8ecf1d47e4a9a80fbfafb6a6c7_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzMtOS0xLTEtMA_8bb6561f-51ad-4d21-a654-fa718cbc3909"
      unitRef="usd">9791000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <enph:FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisWarrantiesIssued
      contextRef="i27dd9b4b0ddf4061940237a2ddfa3117_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzQtNS0xLTEtMA_d56b9f5a-89ad-4c04-a7f4-ff3f307b93ad"
      unitRef="usd">7021000</enph:FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisWarrantiesIssued>
    <enph:FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisWarrantiesIssued
      contextRef="i7dced1dd8ab24dd79e30e23675389888_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzQtNy0xLTEtMA_221439e0-a27b-4d17-ad4f-528727de3fa4"
      unitRef="usd">5244000</enph:FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisWarrantiesIssued>
    <enph:FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisWarrantiesIssued
      contextRef="i3fee2a58eb6d499ca8b6f0a3640e0546_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzQtOS0xLTEtMA_d4e65839-d756-45d7-ae28-ca1d13881688"
      unitRef="usd">3040000</enph:FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisWarrantiesIssued>
    <enph:FairValueMeasurementwithUnobservableInputsReconciliationsRecurringBasisLiabilityChangeinEstimate
      contextRef="i27dd9b4b0ddf4061940237a2ddfa3117_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzUtNS0xLTEtMA_ccae29e6-ee97-43ca-818d-bde8225c8a61"
      unitRef="usd">5039000</enph:FairValueMeasurementwithUnobservableInputsReconciliationsRecurringBasisLiabilityChangeinEstimate>
    <enph:FairValueMeasurementwithUnobservableInputsReconciliationsRecurringBasisLiabilityChangeinEstimate
      contextRef="i7dced1dd8ab24dd79e30e23675389888_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzUtNy0xLTEtMA_7cfe1e7a-7e16-4b37-89b5-2aae5704e516"
      unitRef="usd">6167000</enph:FairValueMeasurementwithUnobservableInputsReconciliationsRecurringBasisLiabilityChangeinEstimate>
    <enph:FairValueMeasurementwithUnobservableInputsReconciliationsRecurringBasisLiabilityChangeinEstimate
      contextRef="i3fee2a58eb6d499ca8b6f0a3640e0546_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzUtOS0xLTEtMA_d6b2d6af-8e0d-4977-b9c8-830cfeb77c6d"
      unitRef="usd">2455000</enph:FairValueMeasurementwithUnobservableInputsReconciliationsRecurringBasisLiabilityChangeinEstimate>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements
      contextRef="i27dd9b4b0ddf4061940237a2ddfa3117_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzYtNS0xLTEtMA_f6add20c-c085-46b3-9e56-88f318cca173"
      unitRef="usd">7781000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements
      contextRef="i7dced1dd8ab24dd79e30e23675389888_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzYtNy0xLTEtMA_7764241b-88b1-418a-a62f-18364e6dc774"
      unitRef="usd">6212000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements
      contextRef="i3fee2a58eb6d499ca8b6f0a3640e0546_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzYtOS0xLTEtMA_b659db20-50ed-41be-a671-dc8092a600a6"
      unitRef="usd">4030000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings
      contextRef="i27dd9b4b0ddf4061940237a2ddfa3117_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzctNS0xLTEtMA_351eea70-a91e-42d4-a5bc-b2966a82b0e6"
      unitRef="usd">3255000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings
      contextRef="i7dced1dd8ab24dd79e30e23675389888_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzctNy0xLTEtMA_ab26930b-730c-4eee-aeaf-3f8cf195f3ca"
      unitRef="usd">2326000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings
      contextRef="i3fee2a58eb6d499ca8b6f0a3640e0546_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzctOS0xLTEtMA_d260f1d4-2c94-45ad-8ac7-243c98678d6f"
      unitRef="usd">1989000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings>
    <enph:FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisIncreaseDecreaseinOther
      contextRef="i27dd9b4b0ddf4061940237a2ddfa3117_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzgtNS0xLTEtMA_bf279e31-3e68-4e38-9e10-a131fea88e7d"
      unitRef="usd">1396000</enph:FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisIncreaseDecreaseinOther>
    <enph:FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisIncreaseDecreaseinOther
      contextRef="i7dced1dd8ab24dd79e30e23675389888_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzgtNy0xLTEtMA_59dabb14-fe54-44ca-94c9-f0159703155f"
      unitRef="usd">524000</enph:FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisIncreaseDecreaseinOther>
    <enph:FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisIncreaseDecreaseinOther
      contextRef="i3fee2a58eb6d499ca8b6f0a3640e0546_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzgtOS0xLTEtMA_95400f95-cea7-4283-b457-71075f75d8dc"
      unitRef="usd">-1488000</enph:FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisIncreaseDecreaseinOther>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="ic59f5e430f57472884e21a432fe22b95_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzktNS0xLTEtMA_77656e38-f89e-4346-8b50-98f79e31f9a5"
      unitRef="usd">28736000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="i525a6e07daed4ac984932cee0fe48aba_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzktNy0xLTEtMA_0a99cb8c-e3e5-4059-a7fa-f96f8388c80e"
      unitRef="usd">19806000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="i52fd9893ed1c431bbb9670829fe5d4d4_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpiODQ3YWJlMGYxNTk0ZGZmOWFmYjQyOWIxYjNjMmQxMC90YWJsZXJhbmdlOmI4NDdhYmUwZjE1OTRkZmY5YWZiNDI5YjFiM2MyZDEwXzktOS0xLTEtMA_1d704663-533f-4964-b520-fa73a79f7971"
      unitRef="usd">11757000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueAssetsMeasuredOnNonrecurringBasisValuationTechniquesTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzY5OTQ_1bffb36f-f079-47a4-9ef6-ac0436d14809">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&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, 2020 and December&#160;31, 2019, the significant unobservable inputs used in the fair value measurement of the Company&#x2019;s liabilities designated as Level 3 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.122%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.071%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.386%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:26.628%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.731%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.736%"/&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: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="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Percent Used&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;(Weighted Average)&lt;/span&gt;&lt;/div&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:8pt;font-weight:700;line-height:100%"&gt;Item Measured at Fair Value&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:8pt;font-weight:700;line-height:100%"&gt;Valuation Technique&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:8pt;font-weight:700;line-height:100%"&gt;Description of Significant Unobservable Input&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Warranty obligations for microinverters sold since January 1, 2014&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Discounted cash flows&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Profit element and risk premium&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;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15%&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;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;14%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #acacac;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Credit-adjusted risk-free rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #acacac;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #acacac;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #acacac;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #acacac;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FairValueAssetsMeasuredOnNonrecurringBasisValuationTechniquesTextBlock>
    <enph:ProductWarrantyObligationsMeasurementInput
      contextRef="i9ce4ec7fc30c45628fca5bc829b3a41e_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpmNTUyODgyYzM1Yzk0ODgyODQ5MGFhMTAzNzlkNTllYy90YWJsZXJhbmdlOmY1NTI4ODJjMzVjOTQ4ODI4NDkwYWExMDM3OWQ1OWVjXzItNi0xLTEtMA_1a774b7c-4554-4caf-a078-f3bf4a1a7141"
      unitRef="number">0.15</enph:ProductWarrantyObligationsMeasurementInput>
    <enph:ProductWarrantyObligationsMeasurementInput
      contextRef="icf6917d6dcfd44caaa3f3229030864c4_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpmNTUyODgyYzM1Yzk0ODgyODQ5MGFhMTAzNzlkNTllYy90YWJsZXJhbmdlOmY1NTI4ODJjMzVjOTQ4ODI4NDkwYWExMDM3OWQ1OWVjXzItOC0xLTEtMA_60acf306-b156-4956-a7a5-f3244739d4d0"
      unitRef="number">0.14</enph:ProductWarrantyObligationsMeasurementInput>
    <enph:ProductWarrantyObligationsMeasurementInput
      contextRef="i079dffdc4bb04ec698b0daae144a1c37_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpmNTUyODgyYzM1Yzk0ODgyODQ5MGFhMTAzNzlkNTllYy90YWJsZXJhbmdlOmY1NTI4ODJjMzVjOTQ4ODI4NDkwYWExMDM3OWQ1OWVjXzMtNi0xLTEtMA_576c6914-c7b5-4d9b-969d-33ae5e53a02c"
      unitRef="number">0.13</enph:ProductWarrantyObligationsMeasurementInput>
    <enph:ProductWarrantyObligationsMeasurementInput
      contextRef="i84fa9117946442b3809a83319899bf62_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90YWJsZTpmNTUyODgyYzM1Yzk0ODgyODQ5MGFhMTAzNzlkNTllYy90YWJsZXJhbmdlOmY1NTI4ODJjMzVjOTQ4ODI4NDkwYWExMDM3OWQ1OWVjXzMtOC0xLTEtMA_1e448a85-1baf-4ad7-9c29-19f5322a31d8"
      unitRef="number">0.16</enph:ProductWarrantyObligationsMeasurementInput>
    <enph:WarrantyObligationsAtFairValueIncreaseInFairValueLiabilityResultingFromOnePercentagePointIncreaseInProfitElementAndRiskPremium
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzY2NjY_2a87478b-87e4-4bbd-bd82-f944364003bd"
      unitRef="usd">200000</enph:WarrantyObligationsAtFairValueIncreaseInFairValueLiabilityResultingFromOnePercentagePointIncreaseInProfitElementAndRiskPremium>
    <enph:WarrantyObligationsAtFairValueDecreaseInFairValueLiabilityResultingFromOnePercentagePointDecreaseInProfitElementAndRiskPremium
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzY3NzI_71f47b8d-e135-43f0-a7da-3b1eb2f2cd7d"
      unitRef="usd">200000</enph:WarrantyObligationsAtFairValueDecreaseInFairValueLiabilityResultingFromOnePercentagePointDecreaseInProfitElementAndRiskPremium>
    <enph:WarrantyObligationsAtFairValueIncreaseInFairValueResultingFromOnePercentagePointDecreaseInDiscountRate
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzY4NjA_ca368756-4be9-482f-b036-e901716606f7"
      unitRef="usd">1400000</enph:WarrantyObligationsAtFairValueIncreaseInFairValueResultingFromOnePercentagePointDecreaseInDiscountRate>
    <enph:WarrantyObligationsatFairValueDecreaseinFairValueResultingfromOnePercentagePointIncreaseinDiscountRate
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xMzAvZnJhZzplMzAyNTE5NzMzMzY0OTFmODk3NmRmNTZmZjIyNDgzNC90ZXh0cmVnaW9uOmUzMDI1MTk3MzMzNjQ5MWY4OTc2ZGY1NmZmMjI0ODM0XzY5NDg_0b25c34d-e9f0-4280-a0fa-897023839928"
      unitRef="usd">1600000</enph:WarrantyObligationsatFairValueDecreaseinFairValueResultingfromOnePercentagePointIncreaseinDiscountRate>
    <us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90ZXh0cmVnaW9uOmY2MmQ3ZGU5ZTIwODQwMzU4NWEwZDg5ZWExNTdhNDhiXzc3_1904ce48-cd9f-49fa-860d-ceb26ccd16ad">RESTRUCTURING&#160;&#160;&#160;&#160;&lt;div style="margin-top:6pt;text-indent:2.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restructuring expense consist of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:center"&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:56.648%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.935%"/&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.622%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Redundancy and employee severance and benefit arrangements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,575&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,228&#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 10pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Asset impairments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;1,124&#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:9pt;font-weight:400;line-height:100%"&gt;1,601&#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 10pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Consultants engaged in restructuring activities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;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:9pt;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;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lease loss reserves (benefit)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;(100)&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:9pt;font-weight:400;line-height:100%"&gt;300&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 21.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total restructuring charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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 #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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;2,599&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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 #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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;4,129&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;2018 Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the third quarter of 2018, the Company began implementing restructuring actions (the &#x201c;2018 Plan&#x201d;) to lower its operating expenses. The restructuring actions include reorganization of the Company&#x2019;s global workforce, elimination of certain non-core projects and consolidation of facilities. The Company completed its restructuring activities under the 2018 Plan in 2019. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides information regarding changes in the Company&#x2019;s 2018 Plan accrued restructuring balance for the periods indicated.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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 colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Redundancy and Employee Severance and Benefits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Lease Loss Reserves and Contractual Obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2018&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;904&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;288&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,192&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Charges&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:9pt;font-weight:400;line-height:100%"&gt;2,699&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;2,699&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash payments&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:9pt;font-weight:400;line-height:100%"&gt;(1,610)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(1,610)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Non-cash settlement and other&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:9pt;font-weight:400;line-height:100%"&gt;(1,993)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;(288)&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:9pt;font-weight:400;line-height:100%"&gt;(2,281)&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:9pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2019&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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 colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the details of the Company&#x2019;s restructuring charges under the 2018 Plan for the period indicated:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:59.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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.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.622%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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-bottom:1pt solid #000000;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;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Redundancy and employee severance and benefit arrangements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,575&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,228&#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:9pt;font-weight:400;line-height:100%"&gt;Asset impairments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;1,124&#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:9pt;font-weight:400;line-height:100%"&gt;1,636&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Lease loss reserves (benefit)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(100)&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:9pt;font-weight:400;line-height:100%"&gt;340&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Total restructuring charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;2,599&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;4,204&#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-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;2016 Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the third quarter of 2016, the Company began implementing restructuring actions (the &#x201c;2016 Plan&#x201d;) to lower its operating expenses. The restructuring actions have included reductions in the Company&#x2019;s global workforce, the elimination of certain non-core projects, consolidation of office space at the Company&#x2019;s corporate headquarters and the engagement of management consultants to assist the Company in making organizational and structural changes to improve operational efficiencies and reduce expenses. The Company completed its restructuring activities under the 2016 Plan in 2017.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides information regarding changes in the Company&#x2019;s 2016 Plan accrued restructuring balance for the periods indicated.&lt;/span&gt;&lt;/div&gt;&lt;div&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:45.829%"/&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.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.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.624%"/&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:8pt;font-weight:700;line-height:100%"&gt;Employee Severance and Benefits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Asset Impairments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Lease Loss Reserves and Contractual Obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2018&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;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 #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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,591&#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:9pt;font-weight:400;line-height:100%"&gt;1,591&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;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 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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;(1,591)&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:9pt;font-weight:400;line-height:100%"&gt;(1,591)&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:9pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2019&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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;(1)&#160;&#160;&#160;&#160;Adoption of ASU&#160;2016-02</us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90ZXh0cmVnaW9uOmY2MmQ3ZGU5ZTIwODQwMzU4NWEwZDg5ZWExNTdhNDhiXzc4_0c711ed8-e028-4b0a-9290-7d70772bb46c">&lt;div style="margin-top:6pt;text-indent:2.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restructuring expense consist of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:center"&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:56.648%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.935%"/&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.622%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Redundancy and employee severance and benefit arrangements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,575&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,228&#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 10pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Asset impairments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;1,124&#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:9pt;font-weight:400;line-height:100%"&gt;1,601&#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 10pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Consultants engaged in restructuring activities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;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:9pt;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;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lease loss reserves (benefit)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;(100)&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:9pt;font-weight:400;line-height:100%"&gt;300&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 21.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total restructuring charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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 #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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;2,599&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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 #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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;4,129&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the details of the Company&#x2019;s restructuring charges under the 2018 Plan for the period indicated:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:59.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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.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.622%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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-bottom:1pt solid #000000;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;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Redundancy and employee severance and benefit arrangements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,575&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,228&#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:9pt;font-weight:400;line-height:100%"&gt;Asset impairments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;1,124&#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:9pt;font-weight:400;line-height:100%"&gt;1,636&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Lease loss reserves (benefit)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(100)&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:9pt;font-weight:400;line-height:100%"&gt;340&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Total restructuring charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;2,599&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;4,204&#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:ScheduleOfRestructuringAndRelatedCostsTextBlock>
    <us-gaap:RestructuringCharges
      contextRef="icf4f0a12e8394bb3913270d14c07c1e4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzMtNS0xLTEtMA_998f2faf-966a-4cc4-9ed1-18460f4f902e"
      unitRef="usd">0</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="iabfb9d1f67414f4d87809f7d00fd78da_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzMtNy0xLTEtMA_85864f22-bf5c-4b35-a935-af0b6bccd7f7"
      unitRef="usd">1575000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i9787948539f84e27871408ca936c475b_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzMtOS0xLTEtMA_8ca75cb7-68e6-432e-9a50-35eb6ab62854"
      unitRef="usd">2228000</us-gaap:RestructuringCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i039c5c5cdc18445996c25d7e274b2419_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzQtNS0xLTEtNjk4OA_a3e349cc-26ab-4b02-86bf-c80ac4cc8de4"
      unitRef="usd">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i080285bfa4a64715b5e4dcf4a55d396f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzQtNy0xLTEtMA_023131d0-99cd-4c8e-87c4-8a96b758cb20"
      unitRef="usd">1124000</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="ibd82440942494311a424afea1c03276f_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzQtOS0xLTEtMA_8b7e44df-a56b-46a0-8d50-6f1a58339df3"
      unitRef="usd">1601000</us-gaap:AssetImpairmentCharges>
    <us-gaap:RestructuringReserveAccrualAdjustment1
      contextRef="i2e9c5d115a6d4e1ba7e98c8c12f024c9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzUtNS0xLTEtMA_b8880ef5-3ad5-49f9-9b98-ba410d552043"
      unitRef="usd">0</us-gaap:RestructuringReserveAccrualAdjustment1>
    <us-gaap:RestructuringReserveAccrualAdjustment1
      contextRef="i723ba8f37535441c880dbb0edf2c4ec4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzUtNy0xLTEtMA_dcd11299-b16c-4884-9a40-862a2c21b10f"
      unitRef="usd">0</us-gaap:RestructuringReserveAccrualAdjustment1>
    <us-gaap:RestructuringReserveAccrualAdjustment1
      contextRef="id7a2cd97149e4e6dab566f46e0129a05_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzUtOS0xLTEtMA_376d7295-c560-4546-b5da-0127398600b6"
      unitRef="usd">0</us-gaap:RestructuringReserveAccrualAdjustment1>
    <us-gaap:RestructuringReserveAccrualAdjustment1
      contextRef="i142633a1b6ff46b5bb801aeca102dfe6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzYtNS0xLTEtMA_f707b888-592b-4e2f-9cfc-7cbeb575703c"
      unitRef="usd">0</us-gaap:RestructuringReserveAccrualAdjustment1>
    <us-gaap:RestructuringReserveAccrualAdjustment1
      contextRef="if216c45d932d4d9fb534508be2e9258e_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzYtNy0xLTEtMA_60f60a8c-a991-4e9b-880c-2aa8e219b8c9"
      unitRef="usd">-100000</us-gaap:RestructuringReserveAccrualAdjustment1>
    <us-gaap:RestructuringReserveAccrualAdjustment1
      contextRef="i38919437aef345d089d69cf590282fdb_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzYtOS0xLTEtMA_cbe624fd-7bd1-42e9-88e4-70cb68fabc99"
      unitRef="usd">300000</us-gaap:RestructuringReserveAccrualAdjustment1>
    <us-gaap:RestructuringCharges
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzgtNS0xLTEtMA_b9112c94-a503-4d63-aee3-840782d3ec56"
      unitRef="usd">0</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzgtNy0xLTEtMA_62208d51-82d9-4670-9e5a-a7ed26244827"
      unitRef="usd">2599000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDUvZnJhZzpmNjJkN2RlOWUyMDg0MDM1ODVhMGQ4OWVhMTU3YTQ4Yi90YWJsZTpkMzViMzhmNmU0Njk0YWY4OTc4N2YzMzE3M2E4MDZlZi90YWJsZXJhbmdlOmQzNWIzOGY2ZTQ2OTRhZjg5Nzg3ZjMzMTczYTgwNmVmXzgtOS0xLTEtMA_b4188643-b569-49eb-a98a-50b7c4877634"
      unitRef="usd">4129000</us-gaap:RestructuringCharges>
    <us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90ZXh0cmVnaW9uOmFhZGY3MjQ1M2YzODRlYzdiNTgyZjE4YzgyOWM3NDdmXzQ5NDc4MDIzMjU2Nzg_cbf93bc2-13ad-4849-9d55-19a712ae99d3">&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides information regarding changes in the Company&#x2019;s 2018 Plan accrued restructuring balance for the periods indicated.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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 colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Redundancy and Employee Severance and Benefits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Lease Loss Reserves and Contractual Obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2018&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;904&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;288&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,192&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Charges&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:9pt;font-weight:400;line-height:100%"&gt;2,699&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;2,699&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash payments&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:9pt;font-weight:400;line-height:100%"&gt;(1,610)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(1,610)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Non-cash settlement and other&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:9pt;font-weight:400;line-height:100%"&gt;(1,993)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;(288)&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:9pt;font-weight:400;line-height:100%"&gt;(2,281)&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:9pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2019&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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 colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides information regarding changes in the Company&#x2019;s 2016 Plan accrued restructuring balance for the periods indicated.&lt;/span&gt;&lt;/div&gt;&lt;div&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:45.829%"/&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.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.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.624%"/&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:8pt;font-weight:700;line-height:100%"&gt;Employee Severance and Benefits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Asset Impairments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Lease Loss Reserves and Contractual Obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2018&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;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 #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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,591&#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:9pt;font-weight:400;line-height:100%"&gt;1,591&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;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 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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;(1,591)&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:9pt;font-weight:400;line-height:100%"&gt;(1,591)&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:9pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2019&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&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;(1)&#160;&#160;&#160;&#160;Adoption of ASU&#160;2016-02 -Leases.</us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock>
    <us-gaap:RestructuringReserve
      contextRef="i894a1e078c844a0e8b6cbeec89f20abb_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzYtMS0xLTEtNjMzNQ_7c57ce5d-649c-48a1-aa95-e332bd11d932"
      unitRef="usd">904000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="i9a666e6155f14f6fa9380bbb3d1bfa7d_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzYtNS0xLTEtNjMzNQ_45b0d61a-78ae-4ee2-840f-fb88578a13f4"
      unitRef="usd">288000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="iea626abbe41d432883859f1285399896_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzYtNy0xLTEtNjMzNQ_733bede6-d19c-43b7-91fc-87b60089a0b9"
      unitRef="usd">1192000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringCostsAndAssetImpairmentCharges
      contextRef="i46ee5fde2a534642ba8a724b989ec80f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzctMS0xLTEtNjMzNQ_3f33a003-a952-4642-b3e3-7b1612e9cf5a"
      unitRef="usd">2699000</us-gaap:RestructuringCostsAndAssetImpairmentCharges>
    <us-gaap:RestructuringCostsAndAssetImpairmentCharges
      contextRef="i7d0f57dd07ee49d09dd0cc17e5756162_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzctNS0xLTEtNjMzNQ_2c85f0bb-54e5-4b53-9adf-00dc062dcfa5"
      unitRef="usd">0</us-gaap:RestructuringCostsAndAssetImpairmentCharges>
    <us-gaap:RestructuringCostsAndAssetImpairmentCharges
      contextRef="if4cd27e3416c4c3cb54d618a4c097cd4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzctNy0xLTEtNjMzNQ_6c24acad-7d65-481e-ba2a-37240201d381"
      unitRef="usd">2699000</us-gaap:RestructuringCostsAndAssetImpairmentCharges>
    <us-gaap:PaymentsForRestructuring
      contextRef="i46ee5fde2a534642ba8a724b989ec80f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzgtMS0xLTEtNjMzNQ_a74872b1-5f10-4668-888f-0898c09f4b8f"
      unitRef="usd">1610000</us-gaap:PaymentsForRestructuring>
    <us-gaap:PaymentsForRestructuring
      contextRef="i7d0f57dd07ee49d09dd0cc17e5756162_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzgtNS0xLTEtNjMzNQ_8ad8168f-5afe-48b6-89c1-125e89793443"
      unitRef="usd">0</us-gaap:PaymentsForRestructuring>
    <us-gaap:PaymentsForRestructuring
      contextRef="if4cd27e3416c4c3cb54d618a4c097cd4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzgtNy0xLTEtNjMzNQ_cc3c9d76-9e1e-4d8d-aa67-15147ce99e1f"
      unitRef="usd">1610000</us-gaap:PaymentsForRestructuring>
    <us-gaap:RestructuringReserveSettledWithoutCash2
      contextRef="i46ee5fde2a534642ba8a724b989ec80f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzktMS0xLTEtNjMzNQ_a150470c-da81-4ca6-aacd-9fe651e581a1"
      unitRef="usd">1993000</us-gaap:RestructuringReserveSettledWithoutCash2>
    <us-gaap:RestructuringReserveSettledWithoutCash2
      contextRef="i7d0f57dd07ee49d09dd0cc17e5756162_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzktNS0xLTEtNjMzNQ_ef716dd7-8e70-4c9b-9a74-80c5ba44dc67"
      unitRef="usd">288000</us-gaap:RestructuringReserveSettledWithoutCash2>
    <us-gaap:RestructuringReserveSettledWithoutCash2
      contextRef="if4cd27e3416c4c3cb54d618a4c097cd4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzktNy0xLTEtNjMzNQ_e0a1457d-bb04-4060-9f6d-0aaf17511d32"
      unitRef="usd">2281000</us-gaap:RestructuringReserveSettledWithoutCash2>
    <us-gaap:RestructuringReserve
      contextRef="i7d7a46c2562148f08dc4971e17002b14_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzEwLTEtMS0xLTYzMzU_36763457-53e6-43a5-9af3-a952a6987028"
      unitRef="usd">0</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="ia79fcc13a4b54503882c42c90ffcbd7d_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzEwLTUtMS0xLTYzMzU_6332710c-4cf7-4913-a11e-ddc651172f76"
      unitRef="usd">0</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="ic86354ae6e0940b398980892614900ec_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTpjYjNlMmE5M2NkYzM0ZTc4YTgzYzVlMzMzZTBiYzE5MS90YWJsZXJhbmdlOmNiM2UyYTkzY2RjMzRlNzhhODNjNWUzMzNlMGJjMTkxXzEwLTctMS0xLTYzMzU_cb80de0b-07ce-4184-b83a-e07a57eda873"
      unitRef="usd">0</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringCharges
      contextRef="i5af88ed8c2c046a883004054fbc6e44a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTo4ZTc2NTVkYmZjYTA0NGNiYTIwMDFjYzkzZWY3Mjg2YS90YWJsZXJhbmdlOjhlNzY1NWRiZmNhMDQ0Y2JhMjAwMWNjOTNlZjcyODZhXzMtNS0xLTEtNjM0MQ_7d893bbe-492c-41eb-b8ac-86e48e1c22cc"
      unitRef="usd">0</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i46ee5fde2a534642ba8a724b989ec80f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTo4ZTc2NTVkYmZjYTA0NGNiYTIwMDFjYzkzZWY3Mjg2YS90YWJsZXJhbmdlOjhlNzY1NWRiZmNhMDQ0Y2JhMjAwMWNjOTNlZjcyODZhXzMtNy0xLTEtNjM0MQ_6f6a2bda-974a-46bd-ac37-14c372e8af78"
      unitRef="usd">1575000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="ibd6d7ba5ac8d47d680688f5588e72f6d_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTo4ZTc2NTVkYmZjYTA0NGNiYTIwMDFjYzkzZWY3Mjg2YS90YWJsZXJhbmdlOjhlNzY1NWRiZmNhMDQ0Y2JhMjAwMWNjOTNlZjcyODZhXzMtOS0xLTEtNjM0MQ_985cb7cb-7963-4edc-9bac-eed5c4a4e35f"
      unitRef="usd">2228000</us-gaap:RestructuringCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="idd01b47b6fb940249153611f99e66f25_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTo4ZTc2NTVkYmZjYTA0NGNiYTIwMDFjYzkzZWY3Mjg2YS90YWJsZXJhbmdlOjhlNzY1NWRiZmNhMDQ0Y2JhMjAwMWNjOTNlZjcyODZhXzQtNS0xLTEtNjM0MQ_a6219ab8-8316-4a77-b78c-ddfe13b1d58b"
      unitRef="usd">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i1305ecc937334757bb12a8cba7a3f54d_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTo4ZTc2NTVkYmZjYTA0NGNiYTIwMDFjYzkzZWY3Mjg2YS90YWJsZXJhbmdlOjhlNzY1NWRiZmNhMDQ0Y2JhMjAwMWNjOTNlZjcyODZhXzQtNy0xLTEtNjM0MQ_58a4555b-43b7-4897-ad09-e7aacc7a79bf"
      unitRef="usd">1124000</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="i2037d5f81ade4e5cb94be5660abb7cf7_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTo4ZTc2NTVkYmZjYTA0NGNiYTIwMDFjYzkzZWY3Mjg2YS90YWJsZXJhbmdlOjhlNzY1NWRiZmNhMDQ0Y2JhMjAwMWNjOTNlZjcyODZhXzQtOS0xLTEtNjM0MQ_882df06d-426b-43e9-ae8f-d4c829cef113"
      unitRef="usd">1636000</us-gaap:AssetImpairmentCharges>
    <us-gaap:RestructuringReserveAccrualAdjustment1
      contextRef="i5ca7c5cc3d4145dc9b6627d96117df31_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTo4ZTc2NTVkYmZjYTA0NGNiYTIwMDFjYzkzZWY3Mjg2YS90YWJsZXJhbmdlOjhlNzY1NWRiZmNhMDQ0Y2JhMjAwMWNjOTNlZjcyODZhXzYtNS0xLTEtNjM0MQ_06655083-1705-49a6-b004-8c9ce657f8ef"
      unitRef="usd">0</us-gaap:RestructuringReserveAccrualAdjustment1>
    <us-gaap:RestructuringReserveAccrualAdjustment1
      contextRef="ideeba4f7855345dc925838e41a26f62e_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTo4ZTc2NTVkYmZjYTA0NGNiYTIwMDFjYzkzZWY3Mjg2YS90YWJsZXJhbmdlOjhlNzY1NWRiZmNhMDQ0Y2JhMjAwMWNjOTNlZjcyODZhXzYtNy0xLTEtNjM0MQ_4ea3a0d7-19de-42db-a941-f7ee03644de1"
      unitRef="usd">-100000</us-gaap:RestructuringReserveAccrualAdjustment1>
    <us-gaap:RestructuringReserveAccrualAdjustment1
      contextRef="i04f74721ef664a15ae0c152e1d7a7903_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTo4ZTc2NTVkYmZjYTA0NGNiYTIwMDFjYzkzZWY3Mjg2YS90YWJsZXJhbmdlOjhlNzY1NWRiZmNhMDQ0Y2JhMjAwMWNjOTNlZjcyODZhXzYtOS0xLTEtNjM0MQ_0920bea5-b745-4263-92ef-00bd5c027f37"
      unitRef="usd">340000</us-gaap:RestructuringReserveAccrualAdjustment1>
    <us-gaap:RestructuringCharges
      contextRef="i378afa4992c74a2a8ed20ad739716b6d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTo4ZTc2NTVkYmZjYTA0NGNiYTIwMDFjYzkzZWY3Mjg2YS90YWJsZXJhbmdlOjhlNzY1NWRiZmNhMDQ0Y2JhMjAwMWNjOTNlZjcyODZhXzgtNS0xLTEtNjM0MQ_c443f071-fcd7-4ff1-a51a-1f89c30d6258"
      unitRef="usd">0</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="if4cd27e3416c4c3cb54d618a4c097cd4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTo4ZTc2NTVkYmZjYTA0NGNiYTIwMDFjYzkzZWY3Mjg2YS90YWJsZXJhbmdlOjhlNzY1NWRiZmNhMDQ0Y2JhMjAwMWNjOTNlZjcyODZhXzgtNy0xLTEtNjM0MQ_b50edee9-ae53-4fa3-b271-c23b5243a982"
      unitRef="usd">2599000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i932f6b9ccc424cb2b8b851d28ebcaf09_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNDgvZnJhZzphYWRmNzI0NTNmMzg0ZWM3YjU4MmYxOGM4MjljNzQ3Zi90YWJsZTo4ZTc2NTVkYmZjYTA0NGNiYTIwMDFjYzkzZWY3Mjg2YS90YWJsZXJhbmdlOjhlNzY1NWRiZmNhMDQ0Y2JhMjAwMWNjOTNlZjcyODZhXzgtOS0xLTEtNjM0MQ_5e54faa7-3ffb-473e-a345-3c0698b957a3"
      unitRef="usd">4204000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringReserve
      contextRef="i3514341fa75b460ca28ba9831c6e5b7d_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNTQvZnJhZzpkZGExMjE1YWY5NjA0MGJiOWIwNzk4NzBhMzIzMWE1YS90YWJsZToyZjJlNDhiZTk5NWU0MjM4YmQ2NDBkZmVmM2EzNDgyYy90YWJsZXJhbmdlOjJmMmU0OGJlOTk1ZTQyMzhiZDY0MGRmZWYzYTM0ODJjXzEwLTEtMS0xLTA_e5cd3312-a7c0-49b3-8e9a-fc8701ad8a46"
      unitRef="usd">0</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="i1807f587adf64eacad2661c08fce2cb4_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNTQvZnJhZzpkZGExMjE1YWY5NjA0MGJiOWIwNzk4NzBhMzIzMWE1YS90YWJsZToyZjJlNDhiZTk5NWU0MjM4YmQ2NDBkZmVmM2EzNDgyYy90YWJsZXJhbmdlOjJmMmU0OGJlOTk1ZTQyMzhiZDY0MGRmZWYzYTM0ODJjXzEwLTMtMS0xLTA_c610de88-1961-4961-a752-bf34869298ce"
      unitRef="usd">0</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="i3a7cf8004b6b42baa570d9cc4b95dd11_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNTQvZnJhZzpkZGExMjE1YWY5NjA0MGJiOWIwNzk4NzBhMzIzMWE1YS90YWJsZToyZjJlNDhiZTk5NWU0MjM4YmQ2NDBkZmVmM2EzNDgyYy90YWJsZXJhbmdlOjJmMmU0OGJlOTk1ZTQyMzhiZDY0MGRmZWYzYTM0ODJjXzEwLTUtMS0xLTA_a9a6b15f-8911-476a-a3ad-74c9d3b3061f"
      unitRef="usd">1591000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="ic2557eb57d8c40eaa16b68b4b3ff4caf_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNTQvZnJhZzpkZGExMjE1YWY5NjA0MGJiOWIwNzk4NzBhMzIzMWE1YS90YWJsZToyZjJlNDhiZTk5NWU0MjM4YmQ2NDBkZmVmM2EzNDgyYy90YWJsZXJhbmdlOjJmMmU0OGJlOTk1ZTQyMzhiZDY0MGRmZWYzYTM0ODJjXzEwLTctMS0xLTA_6b24d82e-fdc9-4ada-bdc3-75b3e46817c9"
      unitRef="usd">1591000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserveSettledWithoutCash2
      contextRef="i21a2ecfef3914775b73c926e6ff06139_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNTQvZnJhZzpkZGExMjE1YWY5NjA0MGJiOWIwNzk4NzBhMzIzMWE1YS90YWJsZToyZjJlNDhiZTk5NWU0MjM4YmQ2NDBkZmVmM2EzNDgyYy90YWJsZXJhbmdlOjJmMmU0OGJlOTk1ZTQyMzhiZDY0MGRmZWYzYTM0ODJjXzEzLTEtMS0xLTA_20229a02-c825-4256-bdf4-73047e3a7e93"
      unitRef="usd">0</us-gaap:RestructuringReserveSettledWithoutCash2>
    <us-gaap:RestructuringReserveSettledWithoutCash2
      contextRef="i6f9b770a459141ce8e36b45896ac3e73_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNTQvZnJhZzpkZGExMjE1YWY5NjA0MGJiOWIwNzk4NzBhMzIzMWE1YS90YWJsZToyZjJlNDhiZTk5NWU0MjM4YmQ2NDBkZmVmM2EzNDgyYy90YWJsZXJhbmdlOjJmMmU0OGJlOTk1ZTQyMzhiZDY0MGRmZWYzYTM0ODJjXzEzLTMtMS0xLTA_07deef30-3f99-428c-b310-7e23e63911df"
      unitRef="usd">0</us-gaap:RestructuringReserveSettledWithoutCash2>
    <us-gaap:RestructuringReserveSettledWithoutCash2
      contextRef="i563b1b80941944fe983f35feab9f8fea_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNTQvZnJhZzpkZGExMjE1YWY5NjA0MGJiOWIwNzk4NzBhMzIzMWE1YS90YWJsZToyZjJlNDhiZTk5NWU0MjM4YmQ2NDBkZmVmM2EzNDgyYy90YWJsZXJhbmdlOjJmMmU0OGJlOTk1ZTQyMzhiZDY0MGRmZWYzYTM0ODJjXzEzLTUtMS0xLTA_2bf99be3-2964-4e14-a5d3-9207de1fea22"
      unitRef="usd">1591000</us-gaap:RestructuringReserveSettledWithoutCash2>
    <us-gaap:RestructuringReserveSettledWithoutCash2
      contextRef="i0f97419519cb465ab331bf6361ab326c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNTQvZnJhZzpkZGExMjE1YWY5NjA0MGJiOWIwNzk4NzBhMzIzMWE1YS90YWJsZToyZjJlNDhiZTk5NWU0MjM4YmQ2NDBkZmVmM2EzNDgyYy90YWJsZXJhbmdlOjJmMmU0OGJlOTk1ZTQyMzhiZDY0MGRmZWYzYTM0ODJjXzEzLTctMS0xLTA_312d8046-a2d8-41fd-8bf6-7747f083ab9a"
      unitRef="usd">1591000</us-gaap:RestructuringReserveSettledWithoutCash2>
    <us-gaap:RestructuringReserve
      contextRef="i8f06c90fa5fe4dfeb43fd4fea867e82f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNTQvZnJhZzpkZGExMjE1YWY5NjA0MGJiOWIwNzk4NzBhMzIzMWE1YS90YWJsZToyZjJlNDhiZTk5NWU0MjM4YmQ2NDBkZmVmM2EzNDgyYy90YWJsZXJhbmdlOjJmMmU0OGJlOTk1ZTQyMzhiZDY0MGRmZWYzYTM0ODJjXzE0LTEtMS0xLTA_805c1817-699a-4206-bad8-e87acad66b19"
      unitRef="usd">0</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="i04d1b4fab8b94beab1ea80bef0722dfe_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNTQvZnJhZzpkZGExMjE1YWY5NjA0MGJiOWIwNzk4NzBhMzIzMWE1YS90YWJsZToyZjJlNDhiZTk5NWU0MjM4YmQ2NDBkZmVmM2EzNDgyYy90YWJsZXJhbmdlOjJmMmU0OGJlOTk1ZTQyMzhiZDY0MGRmZWYzYTM0ODJjXzE0LTMtMS0xLTA_ec92296e-ae3d-42fe-88cb-29fe5869402a"
      unitRef="usd">0</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="i0a09f6163fd342bd99a1ea39bf7455a3_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNTQvZnJhZzpkZGExMjE1YWY5NjA0MGJiOWIwNzk4NzBhMzIzMWE1YS90YWJsZToyZjJlNDhiZTk5NWU0MjM4YmQ2NDBkZmVmM2EzNDgyYy90YWJsZXJhbmdlOjJmMmU0OGJlOTk1ZTQyMzhiZDY0MGRmZWYzYTM0ODJjXzE0LTUtMS0xLTA_a7027061-7f72-4e0c-a21f-a6503e73dc53"
      unitRef="usd">0</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="i149cae1857cf4540a4ea545d3a449d78_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNTQvZnJhZzpkZGExMjE1YWY5NjA0MGJiOWIwNzk4NzBhMzIzMWE1YS90YWJsZToyZjJlNDhiZTk5NWU0MjM4YmQ2NDBkZmVmM2EzNDgyYy90YWJsZXJhbmdlOjJmMmU0OGJlOTk1ZTQyMzhiZDY0MGRmZWYzYTM0ODJjXzE0LTctMS0xLTA_c6ed7179-ee54-46e4-a32b-afbccbe38051"
      unitRef="usd">0</us-gaap:RestructuringReserve>
    <us-gaap:LongTermDebtTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90ZXh0cmVnaW9uOjNmNDJhNDkwZGQwMTQwYjQ4YmZmYTcxM2U0ZWQ1ZTU4XzEwNg_802b40f2-31a8-45b2-b445-812e75a431db">DEBT &lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides information regarding the Company&#x2019;s long-term debt.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:72.730%"/&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.621%"/&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="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Convertible notes&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Notes due 2025&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;320,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:9pt;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:9pt;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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: unamortized discount and issuance 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:9pt;font-weight:400;line-height:100%"&gt;(64,979)&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:9pt;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;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Carrying amount of Notes due 2025&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:9pt;font-weight:400;line-height:100%"&gt;255,021&#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 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:9pt;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 #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Notes due 2024&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:9pt;font-weight:400;line-height:100%"&gt;88,140&#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:9pt;font-weight:400;line-height:100%"&gt;132,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: unamortized discount and issuance 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:9pt;font-weight:400;line-height:100%"&gt;(19,119)&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:9pt;font-weight:400;line-height:100%"&gt;(35,815)&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 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Carrying amount of Notes due 2024&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:9pt;font-weight:400;line-height:100%"&gt;69,021&#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 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:9pt;font-weight:400;line-height:100%"&gt;96,185&#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 style="height:12pt"&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Notes due 2023&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:9pt;font-weight:400;line-height:100%"&gt;5,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 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:9pt;font-weight:400;line-height:100%"&gt;5,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: unamortized issuance 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:9pt;font-weight:400;line-height:100%"&gt;(102)&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:9pt;font-weight:400;line-height:100%"&gt;(143)&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 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Carrying amount of Notes due 2023&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:9pt;font-weight:400;line-height:100%"&gt;4,898&#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 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:9pt;font-weight:400;line-height:100%"&gt;4,857&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&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;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sale of long-term financing receivable recorded as debt&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:9pt;font-weight:400;line-height:100%"&gt;1,925&#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:9pt;font-weight:400;line-height:100%"&gt;4,501&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total carrying amount of debt&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:9pt;font-weight:400;line-height:100%"&gt;330,865&#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:9pt;font-weight:400;line-height:100%"&gt;105,543&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Less: current portion of convertible notes and long-term financing receivable recorded as debt&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:9pt;font-weight:400;line-height:100%"&gt;(325,967)&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:9pt;font-weight:400;line-height:100%"&gt;(2,884)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Long-term debt&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;4,898&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;102,659&#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-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Convertible Senior Notes due 2025 &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;On March&#160;9, 2020, the Company issued $320.0&#160;million aggregate principal amount of the Notes due 2025. The Notes due 2025 are general unsecured obligations and bear interest at an annual rate of&#160;0.25% per year, payable semi-annually on March&#160;1 and September&#160;1 of each year, beginning September&#160;1, 2020. The Notes due 2025 are governed by an indenture between the Company and U.S. Bank National Association, as trustee. The Notes due 2025 will mature on March&#160;1, 2025, unless earlier repurchased by the Company or converted at the option of the holders. The Company may not redeem the notes prior to the maturity date, and no sinking fund is provided for the notes. The Notes due 2025 may be converted, under certain circumstances as described below, based on an initial conversion rate of 12.2637&#160;shares of common stock per $1,000&#160;principal amount (which represents an initial conversion price of $81.54&#160;per share). The conversion rate for the Notes due 2025 will be subject to adjustment upon the occurrence of certain specified events but will not be adjusted for accrued and unpaid interest. In addition, upon the occurrence of a make-whole fundamental change (as defined in the relevant indenture), the Company will, in certain circumstances, increase the conversion rate by a number of additional shares for a holder that elects to convert its notes in connection with such make-whole fundamental change. The Company received approximately $313.0&#160;million in net proceeds, after deducting the initial purchasers&#x2019; discount, from the issuance of the Notes due 2025.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The Notes due 2025 may be converted prior to the close of business on the business day immediately preceding September&#160;1, 2024, in multiples of $1,000&#160;principal amount, at the option of the holder only under the following circumstances: (1)&#160;during any calendar quarter commencing after the calendar quarter ending on June&#160;30, 2020 (and only during such calendar quarter), if the last reported sale price of the Company&#x2019;s common stock for at least 20 trading days (whether or not consecutive) during a period of 30 consecutive trading days ending on, and including, the last trading day of the immediately preceding calendar quarter is greater than or equal to 130% of the conversion price on each applicable trading day; (2)&#160;during the five business day period after any five consecutive trading day period (the &#x201c;measurement period&#x201d;) in which the &#x201c;trading price&#x201d; (as defined in the relevant indenture) per $1,000&#160;principal amount of notes for each trading day of the measurement period was less than 98% of the product of the last reported sale price of the Company&#x2019;s common stock and the conversion rate on each such trading day; or (3)&#160;upon the occurrence of specified corporate events. On and after September&#160;1, 2024 until the close of business on the second scheduled trading day immediately preceding the maturity date of March&#160;1, 2025, holders may convert their notes at any time, regardless of the foregoing circumstances. Upon the occurrence of a fundamental change (as defined in the relevant indenture), holders may require the Company to repurchase all or a portion of their Notes due 2025 for cash at a price equal to 100%&#160;of the principal amount of the notes to be repurchased plus any accrued and unpaid interest to, but excluding, the fundamental change repurchase date. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify;text-indent:27pt"&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, 2020, the sale price of the Company&#x2019;s common stock was greater than or equal to $106.00 (130%&#160;of the notes conversion price) for&#160;at least 20&#160;trading days (whether consecutive or not) during a period of&#160;30&#160;consecutive trading days preceding the quarter-ended December&#160;31, 2020. As a result, as of December&#160;31, 2020, the Notes due 2025 are convertible at the holders&#x2019; option through March&#160;31, 2021. Accordingly, the Company classified the net carrying amount of the Notes due 2025 of $255.0 million as Debt, current on the consolidated balance sheet as of December&#160;31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the period from March 9, 2020, the issuance date, through May 19, 2020, the number of authorized and unissued shares of the Company&#x2019;s common stock that are not reserved for other purposes was less than the maximum number of underlying shares that would be required to settle the Notes due 2025 into equity. Accordingly, unless and until the Company had a number of authorized shares that were not issued or reserved for any other purpose that equaled or exceeded the maximum number of underlying shares (&#x201c;share reservation condition&#x201d;), the Company would be required to pay to the converting holder in respect of each $1,000 principal amount of notes being converted solely in cash in an amount equal to the sum of the daily conversion values for each of the 20 consecutive trading days during the related observation period. However, following satisfaction of the share reservation condition, the Company could settle conversions of notes through payment or delivery, as the case may be, of cash, shares of the Company&#x2019;s common stock or a combination of cash and shares of its common stock, at the Company&#x2019;s election.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In accounting for the issuance of the Notes due 2025, on March&#160;9, 2020, the conversion option of the Notes due 2025 was deemed an embedded derivative requiring bifurcation from the&#160;Notes due 2025 (&#x201c;host contract&#x201d;) and separate accounting as an embedded derivative liability, as a result of the Company not having the necessary number of authorized but unissued shares of&#160;its common stock available to settle the conversion option of the Notes due 2025 in shares. The proceeds from the Notes due 2025 were first allocated to the embedded derivative liability and the remaining proceeds were then allocated to the host contract. On March&#160;9, 2020, the carrying amount of the embedded derivative liability of $68.7 million representing the conversion option was determined using the Binomial Lattice model and the remaining $251.3 million was allocated to the host contract. The difference between the principal amount of the Notes due 2025 and the fair value of the host contract (the &#x201c;debt discount&#x201d;) is amortized to interest expense using the effective interest method over the term of the Notes due 2025.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On May 20, 2020, at the Company&#x2019;s annual meeting of stockholders, the stockholders approved an amendment to the Amended and Restated Certificate of Incorporation to increase the number of authorized shares of the Company&#x2019;s common stock, par value $0.00001 per share, from 150,000,000 shares to 200,000,000 shares (the &#x201c;Amendment&#x201d;). The Amendment became effective upon filing with the Secretary of State of Delaware on May&#160;20, 2020. As a result, the Company satisfied the share reservation condition. The Company may now settle the Notes due 2025 and warrants issued in conjunction with the Notes due 2025 through payment or delivery, as the case may be, of cash, shares of its common stock or a combination of cash and shares of its common stock, at the Company&#x2019;s election. Accordingly, on May&#160;20, 2020, the embedded derivative liability was remeasured at a fair value of $116.3 million and was then reclassified to additional paid-in-capital in the condensed consolidated balance sheet in the second quarter of 2020 and is no longer remeasured as long as it continues to meet the conditions for equity classification. The Company recorded the change in the fair value of the embedded derivative in other expense, net in the consolidated statement of operations during the year ended December 31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company separated the Notes due 2025 into liability and equity components, this resulted in a tax basis difference associated with the liability component that represents a temporary difference. The Company recognized the deferred taxes of $0.2&#160;million for the tax effect of that temporary difference as an adjustment to the equity component included in additional paid-in capital in the consolidated balance sheet.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the fair value and the change in fair value for the convertible note embedded derivative (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:87.057%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.743%"/&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;Convertible note embedded derivative liability&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fair value as of March 9, 2020&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;68,700&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Change in the fair value&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:9pt;font-weight:400;line-height:100%"&gt;47,600&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fair value as of May 20, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;116,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Debt issuance costs for the issuance of the Notes due 2025 were approximately $7.6 million, consisting of initial purchasers' discount and other issuance costs. In accounting for the transaction costs, the Company allocated the total amount incurred to the Notes due 2025 host contract. Transaction costs were recorded as debt issuance cost (presented as contra debt in the consolidated balance sheet) and are being amortized to interest expense over the term of the Notes due 2025. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the total amount of interest cost recognized relating to the Notes due 2025 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.444%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Year Ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Contractual interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;649&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Amortization of debt discount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;10,072&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Amortization of debt issuance costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;1,229&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total interest cost recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;11,950&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The derived effective interest rate on the Notes due 2025 host contract was determined to be 5.18%, which remain unchanged from the date of issuance. The remaining unamortized debt discount was $58.6 million as of December&#160;31, 2020, and will be amortized over approximately 4.2 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Notes due 2025 Hedge and Warrant Transactions&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In connection with the offering of the Notes due 2025, the Company entered into privately-negotiated convertible note hedge transactions pursuant to which the Company has the option to purchase a total of approximately 3.9&#160;million shares of its common stock (subject to anti-dilution adjustments), which is the same number of shares initially issuable upon conversion of the notes, at a price of $81.54&#160;per share, which is the initial conversion price of the Notes due 2025. The total cost of the convertible note hedge transactions was approximately $89.1&#160;million. The convertible note hedge transactions are expected generally to reduce potential dilution to the Company&#x2019;s common stock upon any conversion of the Notes due 2025 and/or offset any cash payments the Company is required to make in excess of the principal amount of converted notes, as the case may be. As of December&#160;31, 2020, the Company had not purchased any shares under the convertible note hedge transactions. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Additionally, the Company separately entered into privately-negotiated warrant transactions (the &#x201c;Warrants&#x201d;) whereby the Company sold warrants to acquire approximately 3.9&#160;million shares of the Company&#x2019;s common stock (subject to anti-dilution adjustments) at an initial strike price of $106.94 per share. The Company received aggregate proceeds of approximately $71.6&#160;million from the sale of the Warrants. If the market value per share of the Company&#x2019;s common stock, as measured under the Warrants, exceeds the strike price of the Warrants, the Warrants will have a dilutive effect on the Company&#x2019;s earnings per share, unless the Company elects, subject to certain conditions, to settle the Warrants in cash. Taken together, the purchase of the convertible note hedges and the sale of the Warrants are intended to reduce potential dilution from the conversion of the Notes due 2025 and to effectively increase the overall conversion price from $81.54 to $106.94 per share. The Warrants are only exercisable on the applicable expiration dates in accordance with the agreements relating to each of the Warrants. Subject to the other terms of the Warrants, the first expiration date applicable to the Warrants is June 1, 2025, and the final expiration date applicable to the Warrants is September 23, 2025. As of December&#160;31, 2020, the Warrants had not been exercised and remained outstanding.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the period from March 9, 2020, the issuance date of the convertible notes hedge and warrant transactions, through May 19, 2020, the number of authorized and unissued shares of the Company&#x2019;s common stock that are not reserved for other purposes was less than the maximum number of underlying shares that will be required to settle the Notes due 2025 through the delivery of shares of the Company&#x2019;s common stock. Accordingly, the convertibles note hedge and the warrant transactions could only be settled on net cash settlement basis. As a result the convertible note hedge and the warrants transaction were classified as a Convertible notes hedge asset and Warrants liability, respectively, in the consolidated balance sheet and the change in fair value of derivatives was included in other expense, net in the consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On May&#160;20, 2020, at the Company&#x2019;s annual meeting of stockholders, the stockholders approved the Amendment, and as a result, the Convertible notes hedge asset and Warrants liabilities were remeasured at a fair value of $117.1 million and $96.4 million, respectively, and were then reclassified to additional paid-in-capital in the condensed consolidated balance sheet in the second quarter of 2020 and is no longer remeasured as long as they continue to meet the conditions for equity classification. The change in the fair value of the Convertible notes hedge asset and Warrants liability were recorded in other expense, net in the consolidated statements of operations during the year ended December 31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the fair value and the change in fair value for the Convertible notes hedge asset and Warrants liability:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.770%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.596%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.536%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.598%"/&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:8pt;font-weight:700;line-height:100%"&gt;Convertible notes hedge&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Warrants liability&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fair value as of March 9, 2020&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;89,056&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;71,552&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Change in the fair value&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:9pt;font-weight:400;line-height:100%"&gt;28,052&#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:9pt;font-weight:400;line-height:100%"&gt;24,799&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fair value as of May 20, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;117,108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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 #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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;96,351&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Convertible Senior Notes due 2024&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On June&#160;5, 2019, the Company issued $132.0&#160;million aggregate principal amount of 1.0%&#160;convertible senior notes due 2024&#160;(the &#x201c;Notes due 2024&#x201d;). The Notes due 2024 are general unsecured obligations and bear interest at an annual rate of&#160;1.0% per year, payable semi-annually on June&#160;1 and December&#160;1 of each year, beginning December&#160;1, 2019. The Notes due 2024 are governed by an indenture between the Company and U.S. Bank National Association, as trustee. The Notes due 2024 will mature on June&#160;1, 2024, unless earlier repurchased by the Company or converted at the option of the holders. The Company may not redeem the notes prior to the maturity date, and no sinking fund is provided for the notes. The Notes due 2024 may be converted, under certain circumstances as described below, based on an initial conversion rate of 48.7781&#160;shares of common stock per $1,000&#160;principal amount (which represents an initial conversion price of $20.5010&#160;per share). The conversion rate for the Notes due 2024 will be subject to adjustment upon the occurrence of certain specified events but will not be adjusted for accrued and unpaid interest. In addition, upon the occurrence of a make-whole fundamental change (as defined in the relevant indenture), the Company will, in certain circumstances, increase the conversion rate by a number of additional shares for a holder that elects to convert its notes in connection with such make-whole fundamental change. The Company received approximately $128.0&#160;million in net proceeds, after deducting the initial purchasers&#x2019; discount, from the issuance of the Notes due 2024.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:117%"&gt;The Notes due 2024 may be converted on any day prior to the close of business on the business day immediately preceding December&#160;1, 2023, in multiples of $1,000&#160;principal amount, at the option of the holder only under any of the following circumstances: (1)&#160;during any calendar quarter commencing after the calendar quarter ending on September&#160;30, 2019 (and only during such calendar quarter), if the last reported sale price of the Company&#x2019;s common stock for at least 20 trading days (whether or not consecutive) during a period of 30 consecutive trading days ending on, and including, the last trading day of the immediately preceding calendar quarter is greater than or equal to $26.6513 (130% of the conversion price) on each applicable trading day; (2)&#160;during the five business day period after any five consecutive trading day period (the &#x201c;measurement period&#x201d;) in which the &#x201c;trading price&#x201d; (as defined in the relevant indenture) per $1,000&#160;principal amount of notes for each trading day of the measurement period was less than 98% of the product of the last reported sale price of the Company&#x2019;s common stock and the conversion rate on each such trading day; or (3)&#160;upon the occurrence of specified corporate events. On and after December&#160;1, 2023 until the close of business on the second scheduled trading day immediately preceding the maturity date of June&#160;1, 2024, holders may convert their notes at any time, regardless of the foregoing circumstances. Upon the occurrence of a fundamental change (as defined in the relevant indenture), holders may require the Company to repurchase all or a portion of their Notes due 2024 for cash at a price equal to 100%&#160;of the principal amount of the notes to be repurchased plus any accrued and unpaid interest to, but excluding, the fundamental change repurchase date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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, 2020, the sale price of the Company&#x2019;s common stock was greater than or equal to $26.6513 (130%&#160;of the notes conversion price) for&#160;at least 20&#160;trading days (whether consecutive or not) during a period of&#160;30&#160;consecutive trading days preceding the quarter-ended December&#160;31, 2020. As a result, as of December&#160;31, 2020, the Notes due 2024 are convertible at the holders&#x2019; option through March 31, 2021. Accordingly, the Company classified the net carrying amount of the Notes due 2024 of $69.0&#160;million as Debt, current on the consolidated balance sheet as of December&#160;31, 2020. From January 1, 2021 through February&#160;12, 2021, the Company has received the request for conversion of approximately $61.5 million in principal amount of Notes due 2024, of which the Company has elected to settle the aggregate principal amount of the Notes due 2024 in a combination of cash and any excess in shares of the Company&#x2019;s common stock in accordance with the applicable indenture. Such conversion will be settled in March 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In accounting for the issuance of the Notes due 2024, on June 5, 2019, the Company separated the Notes due 2024 into liability and equity components. The carrying amount of the liability component of approximately&#160;$95.6&#160;million&#160;was calculated by using a discount rate of&#160;7.75%, which was the Company&#x2019;s borrowing rate on the date of the issuance of the notes for a similar debt instrument without the conversion feature. The carrying amount of the equity component of approximately&#160;$36.4&#160;million, representing the conversion option, was determined by deducting the fair value of the liability component from the par value of the Notes due 2024. The equity component of the Notes due 2024 is included in additional paid-in capital in the consolidated balance sheet and is not remeasured as long as it continues to meet the conditions for equity classification. The difference between the principal amount of the Notes due 2024 and the liability component (the &#x201c;debt discount&#x201d;) is amortized to interest expense using the effective interest method over the term of the Notes due 2024.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company separated the Notes due 2024 into liability and equity components, this resulted in a tax basis difference associated with the liability component that represents a temporary difference. The Company recognized the deferred taxes of $0.3 million for the tax effect of that temporary difference as an adjustment to the equity component included in additional paid-in capital in the consolidated balance sheet.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Debt issuance costs for the issuance of the Notes due 2024 were approximately $4.6&#160;million, consisting of initial purchasers' discount and other issuance costs. In accounting for the transaction costs, the Company allocated the total amount incurred to the liability and equity components using the same proportions as the proceeds from the Notes due 2024. Transaction costs attributable to the liability component were approximately&#160;$3.3&#160;million, were recorded as debt issuance cost (presented as contra debt in the consolidated balance sheet) and are being amortized to interest expense over the term of the Notes due 2024. The transaction costs attributable to the equity component were approximately&#160;$1.3&#160;million&#160;and were netted with the equity component in stockholders&#x2019; equity. As of December&#160;31, 2020 and 2019, the unamortized deferred issuance cost for the Notes due 2024 was $1.5&#160;million and $2.9 million, respectively, on the consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the fourth quarter of 2020, holders converted $43.9 million in aggregate principal amount of the Notes due 2024, the principal amount of which was repaid in cash. Of the $43.9 million in aggregate principal amount, $38.5&#160;million in aggregate principal amount was settled pursuant to an exchange agreement entered into in December 2020 with certain holders of Notes due 2024. The Company also issued 1.9&#160;million shares of its common stock to the holders with an aggregate fair value of $301.0&#160;million, representing the conversion value in excess of the principal amount of the Notes due 2024, which were fully offset by shares received from the Company&#x2019;s exercise of the associated note hedging arrangements discussed below. The total amount of $43.9 million paid to partially settle the Notes due 2024 was allocated between the liability and equity components of the amount extinguished by determining the fair value of the liability component immediately prior to the notes settlement and allocating that portion of the conversion price to the liability component in the amount of $37.2 million. The residual of the conversion price of $6.7 million was allocated to the equity component of the Notes due 2024 as a reduction of additional paid-in capital. The fair value of the notes settlement was calculated using a discount rate of 5.75%, representing an estimate of the Company's borrowing rate at the date of repurchase with a remaining expected life of approximately 3.6 years. As part of the settlement, the Company wrote-off the $8.9&#160;million unamortized debt discount and $0.8&#160;million debt issuance cost apportioned to the principal amount of Notes due 2024 settled. The Company also recorded a loss on partial settlement of the Notes due 2024 of $3.0 million in Other expense, net, representing the difference between the consideration attributed to the liability component and the sum of the net carrying amount of the liability component and unamortized debt issuance costs. As of December&#160;31, 2020, $88.1 million aggregate principal amount of the Notes due 2024 remains outstanding.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the total amount of interest cost recognized in the statement of operations relating to the Notes due 2024:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:70.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Contractual interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,284&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;759&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Amortization of debt discount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;6,325&#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:9pt;font-weight:400;line-height:100%"&gt;3,492&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Amortization of debt issuance costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;646&#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:9pt;font-weight:400;line-height:100%"&gt;375&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total interest cost recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;8,255&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;4,626&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The effective interest rate on the liability component Notes due 2024 was 7.75% for the year ended December 31, 2020, which remains unchanged from the date of issuance. The remaining unamortized debt discount was $17.6 million and $32.9 million as of December&#160;31, 2020 and December&#160;31, 2019, respectively, and will be amortized over approximately 3.4 years from December&#160;31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Notes due 2024 Hedge and Warrant Transactions&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In connection with the offering of the Notes due 2024, the Company entered into privately-negotiated convertible note hedge transactions pursuant to which the Company has the option to purchase a total of approximately 6.4&#160;million shares of its common stock (subject to anti-dilution adjustments), which is the same number of shares initially issuable upon conversion of the notes, at a price of $20.5010&#160;per share, which is the initial conversion price of the Notes due 2024. The total cost of the convertible note hedge transactions was approximately $36.3&#160;million. The convertible note hedge transactions are expected generally to reduce potential dilution to the Company&#x2019;s common stock upon any conversion of the Notes due 2024 and/or offset any cash payments the Company is required to make in excess of the principal amount of converted notes, as the case may be.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As a result of the conversion request received from the holders of $43.9&#160;million in aggregate principal amount of the Notes due 2024 in the fourth quarter of 2020, the Company exercised the 2.1&#160;million shares representing proportionate number of the convertible note hedge transaction and received 1.9&#160;million shares on net basis of its common stock during the period. As of December&#160;31, 2020, option to purchase a total of approximately 4.3&#160;million shares remain outstanding.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Additionally, the Company separately entered into privately-negotiated warrant transactions (the &#x201c;Warrants&#x201d;) whereby the Company sold warrants to acquire approximately 6.4&#160;million shares of the Company&#x2019;s common stock (subject to anti-dilution adjustments) at an initial strike price of $25.2320 per share. The Company received aggregate proceeds of approximately $29.8&#160;million from the sale of the Warrants. If the market value per share of the Company&#x2019;s common stock, as measured under the Warrants, exceeds the strike price of the Warrants, the Warrants will have a dilutive effect on the Company&#x2019;s earnings per share, unless the Company elects, subject to certain conditions, to settle the Warrants in cash. Taken together, the purchase of the convertible note hedges and the sale of the Warrants are intended to reduce potential dilution from the conversion of the Notes due 2024 and to effectively increase the overall conversion price from $20.5010 to $25.2320 per share. The Warrants are only exercisable on the applicable expiration dates in accordance with the Warrants. Subject to the other terms of the Warrants, the first expiration date applicable to the Warrants is September 1, 2024, and the final expiration date applicable to the Warrants is April 22, 2025.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the fourth quarter of 2020, the Company entered into partial unwind agreements to unwind number of warrants exercisable under the note hedge arrangements and to issue approximately 2.1&#160;million Warrants on a net basis, resulting in a net issuance of approximately 1.9&#160;million shares of the Company&#x2019;s common stock in connection with the exchange of the Notes due 2024. As of December&#160;31, 2020, Warrants exercisable to purchase a total of approximately 4.3&#160;million shares remains outstanding.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Given that the transactions meet certain accounting criteria, the Notes due 2024 hedge and the warrants transactions are recorded in stockholders&#x2019; equity, and they are not accounted for as derivatives and are not remeasured each reporting period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Convertible Senior Notes due 2023&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In August 2018, the Company sold $65.0&#160;million aggregate principal amount of 4.0%&#160;convertible senior notes due 2023 (the &#x201c;Notes due 2023&#x201d;) in a private placement. On May&#160;30, 2019, the Company entered into separately and privately negotiated transactions with certain holders of the Notes due 2023 resulting in the repurchase and exchange, as of June&#160;5, 2019, of $60.0&#160;million aggregate principal amount of the notes in consideration for the issuance of 10,801,080&#160;shares of common stock and separate cash payments totaling $6.0&#160;million. As of both December&#160;31, 2020 and December&#160;31, 2019, $5.0&#160;million aggregate principal amount of the Notes due 2023 remains outstanding. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The remaining outstanding Notes due 2023 are general unsecured obligations and bear interest at a rate of 4.0%&#160;per year, payable semi-annually on February 1 and August 1 of each year. The Notes due 2023 are governed by an indenture between the Company and U.S. Bank National Association, as trustee. The remaining outstanding Notes due 2023 will mature on August&#160;1, 2023, unless earlier repurchased by the Company or converted at the option of the holders. The Company may not redeem the remaining Notes due 2023 prior to the maturity date, and no sinking fund is provided for such notes. The remaining Notes due 2023 are convertible, at a holder&#x2019;s election, in multiples of $1,000&#160;principal amount, into shares of the Company&#x2019;s common stock based on the applicable conversion rate. The initial conversion rate for such notes is 180.0180&#160;shares of common stock per $1,000&#160;principal amount of notes (which is equivalent to an initial conversion price of approximately $5.56&#160;per share). The conversion rate and the corresponding conversion price are subject to adjustment upon the occurrence of certain events but will not be adjusted for any accrued and unpaid interest. Holders of the remaining Notes due 2023 who convert their notes in connection with a make-whole fundamental change (as defined in the applicable indenture) are, under certain circumstances, entitled to an increase in the conversion rate. Additionally, in the event of a fundamental change, holders of the remaining Notes due 2023 may require the Company to repurchase all or a portion of their notes at a price equal to 100%&#160;of the principal amount of notes, plus any accrued and unpaid interest, including any additional interest to, but excluding, the repurchase date. Holders may convert all or any portion of their Notes due 2023 at their option at any time prior to the close of business on the business day immediately preceding the maturity date, in multiples of $1,000&#160;principal amount.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the amount of interest cost recognized relating to the contractual interest coupon and the amortization of debt issuance costs of the Notes due 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:70.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Contractual interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;200&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,226&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:400;line-height:100%"&gt;Amortization of debt issuance costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;40&#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:9pt;font-weight:400;line-height:100%"&gt;245&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total interest costs recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;240&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;1,471&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Sale of Long-Term Financing Receivables&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company entered into an agreement with a third party in the fourth quarter of 2017 to sell certain current and future receivables at a discount. In December 2017, the third party made an initial purchase of receivables that resulted in net proceeds to the Company of $2.8&#160;million. This transaction was recorded as debt on the accompanying consolidated balance sheets, and the debt balance was relieved in January 2019 as the underlying receivables were settled. During the year ended December 31, 2018, the third party made three additional purchases of receivables that resulted in total net proceeds to the Company of $5.6&#160;million. These transactions were recorded as debt on the accompanying consolidated balance sheets, and the total associated debt balance will be relieved by September 2021 as the underlying receivables are settled. As of December&#160;31, 2020, the total sale of long-term financing receivable recorded as debt of $1.9&#160;million remains outstanding.&lt;/span&gt;&lt;/div&gt;</us-gaap:LongTermDebtTextBlock>
    <us-gaap:ScheduleOfDebtTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90ZXh0cmVnaW9uOjNmNDJhNDkwZGQwMTQwYjQ4YmZmYTcxM2U0ZWQ1ZTU4XzEwMQ_658d2c31-7483-444c-9c9f-79689f4590dc">&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides information regarding the Company&#x2019;s long-term debt.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:72.730%"/&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.621%"/&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="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Convertible notes&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Notes due 2025&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;320,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:9pt;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:9pt;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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: unamortized discount and issuance 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:9pt;font-weight:400;line-height:100%"&gt;(64,979)&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:9pt;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;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Carrying amount of Notes due 2025&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:9pt;font-weight:400;line-height:100%"&gt;255,021&#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 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:9pt;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 #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Notes due 2024&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:9pt;font-weight:400;line-height:100%"&gt;88,140&#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:9pt;font-weight:400;line-height:100%"&gt;132,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: unamortized discount and issuance 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:9pt;font-weight:400;line-height:100%"&gt;(19,119)&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:9pt;font-weight:400;line-height:100%"&gt;(35,815)&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 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Carrying amount of Notes due 2024&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:9pt;font-weight:400;line-height:100%"&gt;69,021&#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 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:9pt;font-weight:400;line-height:100%"&gt;96,185&#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 style="height:12pt"&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Notes due 2023&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:9pt;font-weight:400;line-height:100%"&gt;5,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 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:9pt;font-weight:400;line-height:100%"&gt;5,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: unamortized issuance 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:9pt;font-weight:400;line-height:100%"&gt;(102)&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:9pt;font-weight:400;line-height:100%"&gt;(143)&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 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Carrying amount of Notes due 2023&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:9pt;font-weight:400;line-height:100%"&gt;4,898&#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 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:9pt;font-weight:400;line-height:100%"&gt;4,857&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&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;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sale of long-term financing receivable recorded as debt&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:9pt;font-weight:400;line-height:100%"&gt;1,925&#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:9pt;font-weight:400;line-height:100%"&gt;4,501&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total carrying amount of debt&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:9pt;font-weight:400;line-height:100%"&gt;330,865&#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:9pt;font-weight:400;line-height:100%"&gt;105,543&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Less: current portion of convertible notes and long-term financing receivable recorded as debt&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:9pt;font-weight:400;line-height:100%"&gt;(325,967)&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:9pt;font-weight:400;line-height:100%"&gt;(2,884)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Long-term debt&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;4,898&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;102,659&#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:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the total amount of interest cost recognized relating to the Notes due 2025 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.444%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Year Ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Contractual interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;649&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Amortization of debt discount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;10,072&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Amortization of debt issuance costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;1,229&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total interest cost recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;11,950&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the total amount of interest cost recognized in the statement of operations relating to the Notes due 2024:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:70.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Contractual interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,284&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;759&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Amortization of debt discount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;6,325&#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:9pt;font-weight:400;line-height:100%"&gt;3,492&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Amortization of debt issuance costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;646&#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:9pt;font-weight:400;line-height:100%"&gt;375&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total interest cost recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;8,255&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;4,626&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the amount of interest cost recognized relating to the contractual interest coupon and the amortization of debt issuance costs of the Notes due 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:70.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Contractual interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;200&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,226&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:400;line-height:100%"&gt;Amortization of debt issuance costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;40&#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:9pt;font-weight:400;line-height:100%"&gt;245&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total interest costs recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;240&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;1,471&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDebtTableTextBlock>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="iaa6116257b0045cd9280d0e9aaba5347_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzMtMS0xLTEtMA_2ba21531-dece-4a86-93dc-1da71d440c8c"
      unitRef="usd">320000000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="iee5898a8dd3446438d0ea6ac24c4245b_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzMtMy0xLTEtMA_119b80ea-ae2e-478e-8daf-39ef8cfb7bd8"
      unitRef="usd">0</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="iaa6116257b0045cd9280d0e9aaba5347_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzQtMS0xLTEtMA_51cc896a-692e-4ea6-8fda-428a3cf551dd"
      unitRef="usd">64979000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="iee5898a8dd3446438d0ea6ac24c4245b_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzQtMy0xLTEtMA_9fcd24fa-6833-4fd1-a03c-c8a2e0ef1bea"
      unitRef="usd">0</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <us-gaap:LongTermDebt
      contextRef="iaa6116257b0045cd9280d0e9aaba5347_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzUtMS0xLTEtMA_f3012028-68eb-42f8-97e7-0d799af0b21e"
      unitRef="usd">255021000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="iee5898a8dd3446438d0ea6ac24c4245b_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzUtMy0xLTEtMA_9a0dcd15-3ee0-430b-94d6-753adb8ad98e"
      unitRef="usd">0</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzktMS0xLTEtMA_a961ddb6-d29c-4041-bc8e-f666253111c8"
      unitRef="usd">88140000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="i2bdd73feccad46d39db6c078a41d1a07_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzktMy0xLTEtMA_6593e90f-e2dc-4512-a25c-27221f36113b"
      unitRef="usd">132000000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzEwLTEtMS0xLTA_d4c9e703-79a8-4ff8-ab55-a3be5b87ae11"
      unitRef="usd">19119000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="i2bdd73feccad46d39db6c078a41d1a07_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzEwLTMtMS0xLTA_696cc7e2-ce7a-470e-bf0f-73d10851942d"
      unitRef="usd">35815000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <us-gaap:LongTermDebt
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzExLTEtMS0xLTA_a96746eb-8dd2-4dc0-ae53-ba10ffcec688"
      unitRef="usd">69021000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i2bdd73feccad46d39db6c078a41d1a07_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzExLTMtMS0xLTA_a8deffd5-7d57-416b-94dc-e2a52016179e"
      unitRef="usd">96185000</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="i185a458a13d94cebb99034a7925ff44b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzEzLTEtMS0xLTA_02e1bbde-6f63-4c0a-a744-9572c69d49c4"
      unitRef="usd">5000000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="i3c0f58cfba6740968643ad75296c98d6_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzEzLTMtMS0xLTA_3f72e440-7401-4ec9-b9b9-68068c7709b8"
      unitRef="usd">5000000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="i185a458a13d94cebb99034a7925ff44b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzE0LTEtMS0xLTA_fad54ce2-0b69-49ad-8bd2-2fce987ac044"
      unitRef="usd">102000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="i3c0f58cfba6740968643ad75296c98d6_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzE0LTMtMS0xLTA_49310614-d03d-4ed9-89b4-d5b99d069389"
      unitRef="usd">143000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <us-gaap:LongTermDebt
      contextRef="i185a458a13d94cebb99034a7925ff44b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzE1LTEtMS0xLTA_d57e7a06-5394-4d22-8556-4a6d8cf0b4ac"
      unitRef="usd">4898000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i3c0f58cfba6740968643ad75296c98d6_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzE1LTMtMS0xLTA_74a35352-9448-44f6-98b7-663db37bc3dd"
      unitRef="usd">4857000</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="i21cf380863fc4214a1f8c9f1eaa2da60_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzI1LTEtMS0xLTA_9f7e22bd-bc85-4c86-87df-8ebd499e14b5"
      unitRef="usd">1925000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="i4c912e4b02d44a19991d27be53c4b950_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzI1LTMtMS0xLTA_b3c20a59-7bfc-4227-b91c-13bfe35110ff"
      unitRef="usd">4501000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:LongTermDebt
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzI4LTEtMS0xLTA_742f38c4-602e-4a40-8689-a877fc357f32"
      unitRef="usd">330865000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzI4LTMtMS0xLTA_7239f756-d698-4f39-85be-d935118f2b1a"
      unitRef="usd">105543000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzMwLTEtMS0xLTA_623a1316-c51a-448a-b579-beb7bb06f25e"
      unitRef="usd">325967000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzMwLTMtMS0xLTA_2a0ad68e-4851-46b3-bec6-0e87dbef072b"
      unitRef="usd">2884000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzMxLTEtMS0xLTA_a19bef0b-db9f-4618-b1ee-c05ece8dfdc3"
      unitRef="usd">4898000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjAvZnJhZzozZjQyYTQ5MGRkMDE0MGI0OGJmZmE3MTNlNGVkNWU1OC90YWJsZToyMDNmYTIzMDdlMDQ0ZTRmODFmYmVkMjY4YmNiMjJkMS90YWJsZXJhbmdlOjIwM2ZhMjMwN2UwNDRlNGY4MWZiZWQyNjhiY2IyMmQxXzMxLTMtMS0xLTA_ba8b1e23-41b6-49f3-9b88-c4e565bc5b01"
      unitRef="usd">102659000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzM1_65044128-ad31-439d-a6c3-ba29f87b4972"
      unitRef="usd">320000000.0</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzE1Ng_893c2734-b8b0-4bcf-8ce2-93939a271584"
      unitRef="number">0.0025</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzc3MA_5c3c17eb-213f-4e32-9a12-b92c12dc4b9b"
      unitRef="usdPerShare">81.54</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:ProceedsFromConvertibleDebt
      contextRef="i56f0868e4c8746f0beb36d7610c35a72_D20200309-20200309"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzEzMDI_7dbb842d-346e-4883-86a5-2a1c8eb78dab"
      unitRef="usd">313000000.0</us-gaap:ProceedsFromConvertibleDebt>
    <us-gaap:DebtInstrumentConvertibleThresholdTradingDays
      contextRef="i7d33429eb81e410a99a7e754af11a2be_D20200309-20200309"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzE4MDY_33e567a1-cad3-4fba-b1c2-17ece000e105"
      unitRef="trading_day">20</us-gaap:DebtInstrumentConvertibleThresholdTradingDays>
    <us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1
      contextRef="i7d33429eb81e410a99a7e754af11a2be_D20200309-20200309"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzE4NzA_be09fa2b-a93c-4a8a-9426-93427890b009"
      unitRef="trading_day">30</us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1>
    <us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger
      contextRef="i7d33429eb81e410a99a7e754af11a2be_D20200309-20200309"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzIwMTk_31728f93-ab2e-40a5-8d26-79b33184a51b"
      unitRef="number">1.30</us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1
      contextRef="if44affea699b4b1fa158cb135be043e5_D20200309-20200309"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzIxMjg_d047e5a0-7f70-4145-beef-4ae52d477a15"
      unitRef="trading_day">5</us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1>
    <enph:DebtInstrumentConvertibleMeasurementPeriodPercentageOfStockPriceTrigger
      contextRef="if44affea699b4b1fa158cb135be043e5_D20200309-20200309"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzIzNTE_7f080d22-6b60-4bbc-88d5-824bafd78c01"
      unitRef="number">0.98</enph:DebtInstrumentConvertibleMeasurementPeriodPercentageOfStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger
      contextRef="if44affea699b4b1fa158cb135be043e5_D20200309-20200309"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzI5NDI_586439c7-953b-47e7-bb02-c1e66e496058"
      unitRef="number">1</us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleStockPriceTrigger
      contextRef="icc6268b29b004e15bcf26a2ac3c33eae_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzU0OTc1NTgxNTE0ODc_f9f7908b-ac7c-47cb-b21e-a3b9d782b118"
      unitRef="usdPerShare">106.00</us-gaap:DebtInstrumentConvertibleStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger
      contextRef="i7d33429eb81e410a99a7e754af11a2be_D20200309-20200309"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzU0OTc1NTgxNTE5Njg_31728f93-ab2e-40a5-8d26-79b33184a51b"
      unitRef="number">1.30</us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleThresholdTradingDays
      contextRef="i7d33429eb81e410a99a7e754af11a2be_D20200309-20200309"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzU0OTc1NTgxNTE5NzI_33e567a1-cad3-4fba-b1c2-17ece000e105"
      unitRef="trading_day">20</us-gaap:DebtInstrumentConvertibleThresholdTradingDays>
    <us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1
      contextRef="i7d33429eb81e410a99a7e754af11a2be_D20200309-20200309"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzU0OTc1NTgxNTE5NzY_be09fa2b-a93c-4a8a-9426-93427890b009"
      unitRef="trading_day">30</us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1>
    <us-gaap:LongTermDebtCurrent
      contextRef="iaa6116257b0045cd9280d0e9aaba5347_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzU0OTc1NTgxNTEzODc_d2e57352-629b-4be5-91bb-799f14240657"
      unitRef="usd">255000000.0</us-gaap:LongTermDebtCurrent>
    <us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzQ4MjY_69656d3c-c413-4e4e-a218-cc50291ffed0"
      unitRef="usd">68700000</us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability>
    <enph:EmbeddedDerivativeHostContract
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzQ5MzA_17061df4-eef9-4c4d-b1b4-716bff767899"
      unitRef="usd">251300000</enph:EmbeddedDerivativeHostContract>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i59806dc2bf06478da777591b1851b53c_I20200520"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzU0MTY_ec47fa08-ed71-4162-9da2-4f5944ab38ab"
      unitRef="usdPerShare">0.00001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i5d2df4715c964c839ebbed49d6ff0e76_I20200519"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzU0MzU_bc81a099-21f8-4196-a946-3810f0011d72"
      unitRef="shares">150000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i59806dc2bf06478da777591b1851b53c_I20200520"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzU0NDg_9c440657-0f34-4b24-86d9-d28b47988213"
      unitRef="shares">200000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability
      contextRef="ieba3e8451fe84002ba85c9ed20cdfcde_I20200520"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzU5NzM_887a10cd-edfd-4c70-8c41-8d7d43e80ef4"
      unitRef="usd">116300000</us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="iaa6116257b0045cd9280d0e9aaba5347_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzU0OTc1NTgxNTE5MTg_adcd67e2-fb87-48cd-b1f9-fff74c0864e7"
      unitRef="usd">200000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:ScheduleOfDerivativeInstrumentsTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzExMDg4_fb198d6d-c673-42ab-8161-d4bc89e07784">&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the fair value and the change in fair value for the convertible note embedded derivative (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:87.057%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.743%"/&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;Convertible note embedded derivative liability&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fair value as of March 9, 2020&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;68,700&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Change in the fair value&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:9pt;font-weight:400;line-height:100%"&gt;47,600&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fair value as of May 20, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;116,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDerivativeInstrumentsTextBlock>
    <us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZTo1ZjkxZjFmMmI1MDM0MDliYTU2ZmJiZWJhNjhkNmE4Ni90YWJsZXJhbmdlOjVmOTFmMWYyYjUwMzQwOWJhNTZmYmJlYmE2OGQ2YTg2XzItMS0xLTEtMA_69656d3c-c413-4e4e-a218-cc50291ffed0"
      unitRef="usd">68700000</us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability>
    <us-gaap:EmbeddedDerivativeGainLossOnEmbeddedDerivativeNet
      contextRef="i2048b952882346aea297b3bfbfa8fd4e_D20200310-20200520"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZTo1ZjkxZjFmMmI1MDM0MDliYTU2ZmJiZWJhNjhkNmE4Ni90YWJsZXJhbmdlOjVmOTFmMWYyYjUwMzQwOWJhNTZmYmJlYmE2OGQ2YTg2XzYtMS0xLTEtOTA4MA_4f6fc777-40e9-4015-947a-a7f86de9007f"
      unitRef="usd">47600000</us-gaap:EmbeddedDerivativeGainLossOnEmbeddedDerivativeNet>
    <us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability
      contextRef="ieba3e8451fe84002ba85c9ed20cdfcde_I20200520"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZTo1ZjkxZjFmMmI1MDM0MDliYTU2ZmJiZWJhNjhkNmE4Ni90YWJsZXJhbmdlOjVmOTFmMWYyYjUwMzQwOWJhNTZmYmJlYmE2OGQ2YTg2XzYtMS0xLTEtMA_47d0aeeb-762a-4bbc-9ba3-71710149d86b"
      unitRef="usd">116300000</us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability>
    <us-gaap:DeferredFinanceCostsGross
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzY1Njk_a6a6f395-11ee-49a5-b43d-c04b4001454c"
      unitRef="usd">7600000</us-gaap:DeferredFinanceCostsGross>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="icc74bf69f84e4376a26f3240a7d7c556_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZToyMmRhY2JhNGVjZjU0YjgzYTVlNjIxOGZlOWMxYTEzNi90YWJsZXJhbmdlOjIyZGFjYmE0ZWNmNTRiODNhNWU2MjE4ZmU5YzFhMTM2XzQtNS0xLTEtMA_a378f060-8058-41b1-9702-794d0a719ead"
      unitRef="usd">649000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="icc74bf69f84e4376a26f3240a7d7c556_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZToyMmRhY2JhNGVjZjU0YjgzYTVlNjIxOGZlOWMxYTEzNi90YWJsZXJhbmdlOjIyZGFjYmE0ZWNmNTRiODNhNWU2MjE4ZmU5YzFhMTM2XzUtNS0xLTEtMA_6af6f347-c3d4-479f-909d-0ef611d35959"
      unitRef="usd">10072000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="icc74bf69f84e4376a26f3240a7d7c556_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZToyMmRhY2JhNGVjZjU0YjgzYTVlNjIxOGZlOWMxYTEzNi90YWJsZXJhbmdlOjIyZGFjYmE0ZWNmNTRiODNhNWU2MjE4ZmU5YzFhMTM2XzYtNS0xLTEtMA_0bc4a090-066e-4d2b-9efb-09b688d4b5cc"
      unitRef="usd">1229000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:InterestExpenseDebt
      contextRef="icc74bf69f84e4376a26f3240a7d7c556_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZToyMmRhY2JhNGVjZjU0YjgzYTVlNjIxOGZlOWMxYTEzNi90YWJsZXJhbmdlOjIyZGFjYmE0ZWNmNTRiODNhNWU2MjE4ZmU5YzFhMTM2XzctNS0xLTEtMA_b422840d-b3c1-42a5-8ca9-e5e23e902f07"
      unitRef="usd">11950000</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="iaa6116257b0045cd9280d0e9aaba5347_I20201231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzcxMTk_da610e58-dfd3-4f71-9696-1439cdcbaf9d"
      unitRef="number">0.0518</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="iaa6116257b0045cd9280d0e9aaba5347_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzcyMTc_b29f470b-6835-4ca9-941f-541d6293f319"
      unitRef="usd">58600000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:DebtInstrumentConvertibleRemainingDiscountAmortizationPeriod1
      contextRef="icc74bf69f84e4376a26f3240a7d7c556_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzcyNjc_a78bf297-edfb-4b53-84eb-8e67a99ad03e">P4Y2M12D</us-gaap:DebtInstrumentConvertibleRemainingDiscountAmortizationPeriod1>
    <enph:DebtInstrumentConvertibleConversionShares
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzc1MTI_4a6ff1cb-874a-41d5-9172-a99ac2b5a266"
      unitRef="shares">3900000</enph:DebtInstrumentConvertibleConversionShares>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzc2ODA_ae6bddb9-e54c-439b-8a70-623be40b6782"
      unitRef="usdPerShare">81.54</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:PaymentsForHedgeFinancingActivities
      contextRef="i56f0868e4c8746f0beb36d7610c35a72_D20200309-20200309"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzc4MTk_b5266a3b-770e-495c-8f94-9c7122b5779a"
      unitRef="usd">89100000</us-gaap:PaymentsForHedgeFinancingActivities>
    <enph:DebtInstrumentConvertibleConversionShares
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzgzNjg_4a6ff1cb-874a-41d5-9172-a99ac2b5a266"
      unitRef="shares">3900000</enph:DebtInstrumentConvertibleConversionShares>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzg0Nzc_ac257b10-bb0f-4b17-be1b-7ae0402e329c"
      unitRef="usdPerShare">106.94</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <us-gaap:ProceedsFromIssuanceOfWarrants
      contextRef="i56f0868e4c8746f0beb36d7610c35a72_D20200309-20200309"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzg1NDg_38800913-b993-49cf-b587-1d3bd8d14d88"
      unitRef="usd">71600000</us-gaap:ProceedsFromIssuanceOfWarrants>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzkwNzI_ae6bddb9-e54c-439b-8a70-623be40b6782"
      unitRef="usdPerShare">81.54</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzkwNzg_ac257b10-bb0f-4b17-be1b-7ae0402e329c"
      unitRef="usdPerShare">106.94</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability
      contextRef="i6685c6abcaca4b288831b8a845b82d40_I20200520"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzEwNDk1_66dd2e41-5112-4486-af82-f4dec632fd41"
      unitRef="usd">117100000</us-gaap:EmbeddedDerivativeFairValueOfEmbeddedDerivativeLiability>
    <us-gaap:WarrantsAndRightsOutstanding
      contextRef="i59806dc2bf06478da777591b1851b53c_I20200520"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90ZXh0cmVnaW9uOjUxZWQzODY0MjViMTRkMGU4OGQwNDUwOGQzZThiMDMyXzEwNTAy_06302f66-7bf0-41c0-8f16-a575107b3671"
      unitRef="usd">96400000</us-gaap:WarrantsAndRightsOutstanding>
    <us-gaap:DerivativeInstrumentsAndHedgesNoncurrent
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZTphOTE2YWQyNzk4NGI0ZTBjYjVjMmZlM2RjNTU3ZTY4NC90YWJsZXJhbmdlOmE5MTZhZDI3OTg0YjRlMGNiNWMyZmUzZGM1NTdlNjg0XzItMS0xLTEtMA_bee35aa6-4064-4be7-9cf8-89607bf5573d"
      unitRef="usd">89056000</us-gaap:DerivativeInstrumentsAndHedgesNoncurrent>
    <us-gaap:WarrantsAndRightsOutstanding
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZTphOTE2YWQyNzk4NGI0ZTBjYjVjMmZlM2RjNTU3ZTY4NC90YWJsZXJhbmdlOmE5MTZhZDI3OTg0YjRlMGNiNWMyZmUzZGM1NTdlNjg0XzItMy0xLTEtMA_1f6f5337-6491-417d-9997-0ee5e76e9bb7"
      unitRef="usd">71552000</us-gaap:WarrantsAndRightsOutstanding>
    <us-gaap:GainLossOnDerivativeInstrumentsNetPretax
      contextRef="i63b16db3981a4dad8759c8f0c01f1009_D20200310-20200520"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZTphOTE2YWQyNzk4NGI0ZTBjYjVjMmZlM2RjNTU3ZTY4NC90YWJsZXJhbmdlOmE5MTZhZDI3OTg0YjRlMGNiNWMyZmUzZGM1NTdlNjg0XzYtMS0xLTEtOTA5NA_6688169d-f5e9-4a95-bc6b-9de1e1f25ea2"
      unitRef="usd">28052000</us-gaap:GainLossOnDerivativeInstrumentsNetPretax>
    <us-gaap:FairValueAdjustmentOfWarrants
      contextRef="i63b16db3981a4dad8759c8f0c01f1009_D20200310-20200520"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZTphOTE2YWQyNzk4NGI0ZTBjYjVjMmZlM2RjNTU3ZTY4NC90YWJsZXJhbmdlOmE5MTZhZDI3OTg0YjRlMGNiNWMyZmUzZGM1NTdlNjg0XzYtMy0xLTEtOTEwMA_f0054c10-1e9e-4b4d-aa38-f665f75a0c70"
      unitRef="usd">24799000</us-gaap:FairValueAdjustmentOfWarrants>
    <us-gaap:DerivativeInstrumentsAndHedgesNoncurrent
      contextRef="ieba3e8451fe84002ba85c9ed20cdfcde_I20200520"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZTphOTE2YWQyNzk4NGI0ZTBjYjVjMmZlM2RjNTU3ZTY4NC90YWJsZXJhbmdlOmE5MTZhZDI3OTg0YjRlMGNiNWMyZmUzZGM1NTdlNjg0XzYtMS0xLTEtMA_80eaa55c-f9ff-41fe-a586-42678b1388ab"
      unitRef="usd">117108000</us-gaap:DerivativeInstrumentsAndHedgesNoncurrent>
    <us-gaap:WarrantsAndRightsOutstanding
      contextRef="ieba3e8451fe84002ba85c9ed20cdfcde_I20200520"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjMvZnJhZzo1MWVkMzg2NDI1YjE0ZDBlODhkMDQ1MDhkM2U4YjAzMi90YWJsZTphOTE2YWQyNzk4NGI0ZTBjYjVjMmZlM2RjNTU3ZTY4NC90YWJsZXJhbmdlOmE5MTZhZDI3OTg0YjRlMGNiNWMyZmUzZGM1NTdlNjg0XzYtMy0xLTEtMA_ef25bad6-a8da-4166-a952-3291395d8eb8"
      unitRef="usd">96351000</us-gaap:WarrantsAndRightsOutstanding>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzM0_83af5d67-eb6d-4597-bfd2-c69cd0c9b80d"
      unitRef="usd">132000000.0</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzY3_a0133e3f-476a-4d69-9c18-9d2caac426ca"
      unitRef="number">0.010</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzE5Ng_a0133e3f-476a-4d69-9c18-9d2caac426ca"
      unitRef="number">0.010</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzgxMA_08ab566a-9609-46c6-b373-fc8394b69876"
      unitRef="usdPerShare">20.5010</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:ProceedsFromConvertibleDebt
      contextRef="ibead413bd8f64eae80dc65cf6dc2c392_D20190605-20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzEzNDI_1d0d6708-b30c-47a4-a297-2a033a151e4d"
      unitRef="usd">128000000.0</us-gaap:ProceedsFromConvertibleDebt>
    <us-gaap:DebtInstrumentConvertibleThresholdTradingDays
      contextRef="i85e5083a625943bcb18baa053a35dc99_D20190605-20190605"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzE4NjQ_152a9a90-a8a0-48b0-b182-138d06ceb9d0"
      unitRef="trading_day">20</us-gaap:DebtInstrumentConvertibleThresholdTradingDays>
    <us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1
      contextRef="ief98d4c7476147e0af0bc92b61c93d7d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzE5Mjg_e0db030d-09a1-4f83-871e-61c68fd9f673"
      unitRef="trading_day">30</us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1>
    <us-gaap:DebtInstrumentConvertibleStockPriceTrigger
      contextRef="ief98d4c7476147e0af0bc92b61c93d7d_D20200101-20201231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzIwNzc_7b940853-f898-42e2-b403-1bbf04af6589"
      unitRef="usdPerShare">26.6513</us-gaap:DebtInstrumentConvertibleStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger
      contextRef="ief98d4c7476147e0af0bc92b61c93d7d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzIwODE_ec7c495f-8569-4257-a389-14ab4672adfe"
      unitRef="number">1.30</us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1
      contextRef="i19be17f1005a411696f1e9f81ec047da_D20200309-20200309"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzIxOTE_6941e133-fcc7-408e-8710-3057e23b1ab9"
      unitRef="trading_day">5</us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1>
    <enph:DebtInstrumentConvertibleMeasurementPeriodPercentageOfStockPriceTrigger
      contextRef="i85e5083a625943bcb18baa053a35dc99_D20190605-20190605"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzI0MTQ_a04618fb-df00-4830-aee5-6e516845e7bf"
      unitRef="number">0.98</enph:DebtInstrumentConvertibleMeasurementPeriodPercentageOfStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger
      contextRef="i3bd4301c8403411aa8f4af2e63912de9_D20190605-20190605"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzMwMDU_56ea273f-7b8f-4976-b120-56929c7a3d88"
      unitRef="number">1</us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleStockPriceTrigger
      contextRef="ief98d4c7476147e0af0bc92b61c93d7d_D20200101-20201231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzMyNDM_7b940853-f898-42e2-b403-1bbf04af6589"
      unitRef="usdPerShare">26.6513</us-gaap:DebtInstrumentConvertibleStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger
      contextRef="ief98d4c7476147e0af0bc92b61c93d7d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzMyNDc_ec7c495f-8569-4257-a389-14ab4672adfe"
      unitRef="number">1.30</us-gaap:DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleThresholdTradingDays
      contextRef="ief98d4c7476147e0af0bc92b61c93d7d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzMyOTQ_47db6dda-a09c-4489-a71c-d940ce453951"
      unitRef="trading_day">20</us-gaap:DebtInstrumentConvertibleThresholdTradingDays>
    <us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1
      contextRef="ief98d4c7476147e0af0bc92b61c93d7d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzMzNTg_e0db030d-09a1-4f83-871e-61c68fd9f673"
      unitRef="trading_day">30</us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1>
    <us-gaap:LongTermDebtCurrent
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzM1NzI_95af19e8-4b46-4502-9ee8-0f432723e0af"
      unitRef="usd">69000000.0</us-gaap:LongTermDebtCurrent>
    <us-gaap:DebtConversionConvertedInstrumentAmount1
      contextRef="id68f52e6ad0c462ab8557be0a6e6e64b_D20210101-20210212"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5Njc4MjE_c1b648ec-696a-4ab0-b487-8116304cd30f"
      unitRef="usd">61500000</us-gaap:DebtConversionConvertedInstrumentAmount1>
    <us-gaap:ConvertibleNotesPayable
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzQxOTU_c53fc41b-6f67-409b-b1b4-0c2f2ecd0acb"
      unitRef="usd">95600000</us-gaap:ConvertibleNotesPayable>
    <us-gaap:DebtInstrumentMeasurementInput
      contextRef="ideb40a446de648b381aab34d0a210a06_I20190605"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzQyNDE_1b701842-ea4f-4e9f-8fb1-28d6909a4811"
      unitRef="number">0.0775</us-gaap:DebtInstrumentMeasurementInput>
    <us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzQ0NDg_36a882b5-f548-4897-b272-b01c4f3034cc"
      unitRef="usd">36400000</us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzUyMjI_e70b3bfa-ca66-4f64-a7da-f52e2ef24007"
      unitRef="usd">300000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredFinanceCostsGross
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzU0NTU_2250296e-76f6-4999-925d-f906ee40ba7f"
      unitRef="usd">4600000</us-gaap:DeferredFinanceCostsGross>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzU3ODk_fada9e54-2daa-4674-ab54-c592bc0b9a52"
      unitRef="usd">3300000</us-gaap:DeferredFinanceCostsNet>
    <enph:DebtIssuanceCostsAllocatedtoCapital
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwMzg_ac1c5e20-ad51-43a7-bc2f-6ea9f661a6c4"
      unitRef="usd">1300000</enph:DebtIssuanceCostsAllocatedtoCapital>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYxNzk_7570315f-e234-4681-a913-dd9396538998"
      unitRef="usd">1500000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="i2bdd73feccad46d39db6c078a41d1a07_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYxODY_0687cc89-67ff-42f1-b7a1-db7f1efa294a"
      unitRef="usd">2900000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:DebtConversionOriginalDebtAmount1
      contextRef="ic23299c12aec463a881020a65b48bdf9_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzU0OTc1NTgxNTI3ODQ_7b4606b1-bd2b-4d37-86bb-85a50f88b3c2"
      unitRef="usd">43900000</us-gaap:DebtConversionOriginalDebtAmount1>
    <us-gaap:DebtConversionOriginalDebtAmount1
      contextRef="ic23299c12aec463a881020a65b48bdf9_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzcxNDY4MjU1OTUzMTY_7b4606b1-bd2b-4d37-86bb-85a50f88b3c2"
      unitRef="usd">43900000</us-gaap:DebtConversionOriginalDebtAmount1>
    <enph:DebtConversionAmountSettled
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzQ5NDc4MDIzMzk5OTg_d0116040-143e-4f5f-920e-fc8830d49f77"
      unitRef="usd">38500000</enph:DebtConversionAmountSettled>
    <us-gaap:DebtConversionConvertedInstrumentSharesIssued1
      contextRef="ic23299c12aec463a881020a65b48bdf9_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY1MDI_98509ab0-3cd6-41cc-b91d-4471b1fa603d"
      unitRef="shares">1900000</us-gaap:DebtConversionConvertedInstrumentSharesIssued1>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="ic23299c12aec463a881020a65b48bdf9_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY2Mzk_ec3d6c9f-873b-4511-8e71-511c8d66238a"
      unitRef="usd">301000000.0</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:DebtConversionOriginalDebtAmount1
      contextRef="ic23299c12aec463a881020a65b48bdf9_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY1NjE_7b4606b1-bd2b-4d37-86bb-85a50f88b3c2"
      unitRef="usd">43900000</us-gaap:DebtConversionOriginalDebtAmount1>
    <us-gaap:ConvertibleNotesPayable
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY2ODY_b56e615a-59b5-4c0f-aa27-5af3b51c1eb8"
      unitRef="usd">37200000</us-gaap:ConvertibleNotesPayable>
    <us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY1Njk_ac4b233e-b51c-44a0-80b8-62417cabcc74"
      unitRef="usd">6700000</us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent>
    <us-gaap:DebtInstrumentMeasurementInput
      contextRef="i58b1608942844604a93ab9ac9745f646_I20201231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzU0OTc1NTgxNTI4MDY_31e13b5d-60f3-4854-876a-4e796b82dd49"
      unitRef="number">0.0575</us-gaap:DebtInstrumentMeasurementInput>
    <us-gaap:DebtInstrumentMeasurementInput
      contextRef="ic790a4f7d50e4453953b02b3d22e3304_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzU0OTc1NTgxNTI4MTI_9a7d0306-b168-4587-8e57-d034605999b5"
      unitRef="number">3.6</us-gaap:DebtInstrumentMeasurementInput>
    <enph:WriteOffOfDebtDiscount
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzgyNDYzMzcyMjI0NTQ_9433f20e-073e-4243-8d0a-8d1e0bdefad4"
      unitRef="usd">8900000</enph:WriteOffOfDebtDiscount>
    <us-gaap:WriteOffOfDeferredDebtIssuanceCost
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzgyNDYzMzcyMjI0Njg_2969b2f9-c520-4edb-8cb1-6039cb506aa7"
      unitRef="usd">800000</us-gaap:WriteOffOfDeferredDebtIssuanceCost>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="ic23299c12aec463a881020a65b48bdf9_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY1MzY_c219957f-d4c7-4086-a2d3-9eb5ace7ceeb"
      unitRef="usd">-3000000.0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY1MTk_d3249b58-7fbc-4e9e-8b5a-1afbb131ce5c"
      unitRef="usd">88100000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="ic45a4981fa4b4635b9c8196a1077c18e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90YWJsZTo5OTIxYTkwZTNmNTQ0MmRlYjg0NjkwMzk2N2MwZjY0Ny90YWJsZXJhbmdlOjk5MjFhOTBlM2Y1NDQyZGViODQ2OTAzOTY3YzBmNjQ3XzMtNS0xLTEtMA_efb234ed-a680-4ac6-9768-dae947c52b6f"
      unitRef="usd">1284000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="i06d55e970b3143e8b47cef5cf183db0b_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90YWJsZTo5OTIxYTkwZTNmNTQ0MmRlYjg0NjkwMzk2N2MwZjY0Ny90YWJsZXJhbmdlOjk5MjFhOTBlM2Y1NDQyZGViODQ2OTAzOTY3YzBmNjQ3XzMtNy0xLTEtMA_6016ebe2-c534-41f2-90c4-d0e5e320bc31"
      unitRef="usd">759000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="ic45a4981fa4b4635b9c8196a1077c18e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90YWJsZTo5OTIxYTkwZTNmNTQ0MmRlYjg0NjkwMzk2N2MwZjY0Ny90YWJsZXJhbmdlOjk5MjFhOTBlM2Y1NDQyZGViODQ2OTAzOTY3YzBmNjQ3XzQtNS0xLTEtMA_4575a365-a1bc-480d-896f-c623a9c0a7df"
      unitRef="usd">6325000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="i06d55e970b3143e8b47cef5cf183db0b_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90YWJsZTo5OTIxYTkwZTNmNTQ0MmRlYjg0NjkwMzk2N2MwZjY0Ny90YWJsZXJhbmdlOjk5MjFhOTBlM2Y1NDQyZGViODQ2OTAzOTY3YzBmNjQ3XzQtNy0xLTEtMA_bd584cd8-f9bf-4495-9810-07ab1360ad00"
      unitRef="usd">3492000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="ic45a4981fa4b4635b9c8196a1077c18e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90YWJsZTo5OTIxYTkwZTNmNTQ0MmRlYjg0NjkwMzk2N2MwZjY0Ny90YWJsZXJhbmdlOjk5MjFhOTBlM2Y1NDQyZGViODQ2OTAzOTY3YzBmNjQ3XzUtNS0xLTEtMA_cb95bffa-e80e-4563-8415-8d381787051b"
      unitRef="usd">646000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="i06d55e970b3143e8b47cef5cf183db0b_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90YWJsZTo5OTIxYTkwZTNmNTQ0MmRlYjg0NjkwMzk2N2MwZjY0Ny90YWJsZXJhbmdlOjk5MjFhOTBlM2Y1NDQyZGViODQ2OTAzOTY3YzBmNjQ3XzUtNy0xLTEtMA_7efb99b4-bab2-4e88-a4b7-23b2322d3864"
      unitRef="usd">375000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:InterestExpenseDebt
      contextRef="ic45a4981fa4b4635b9c8196a1077c18e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90YWJsZTo5OTIxYTkwZTNmNTQ0MmRlYjg0NjkwMzk2N2MwZjY0Ny90YWJsZXJhbmdlOjk5MjFhOTBlM2Y1NDQyZGViODQ2OTAzOTY3YzBmNjQ3XzYtNS0xLTEtMA_c8a90e38-08fe-40bd-8813-85567ac885d3"
      unitRef="usd">8255000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="i06d55e970b3143e8b47cef5cf183db0b_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90YWJsZTo5OTIxYTkwZTNmNTQ0MmRlYjg0NjkwMzk2N2MwZjY0Ny90YWJsZXJhbmdlOjk5MjFhOTBlM2Y1NDQyZGViODQ2OTAzOTY3YzBmNjQ3XzYtNy0xLTEtMA_f72cdfa5-6131-4630-a6d2-16450b6b9957"
      unitRef="usd">4626000</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYzOTk_9ea1f981-d973-4f0c-9aef-211836947cde"
      unitRef="number">0.0775</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzY1MTI_c630fd7c-e641-4e8f-b1d6-789671942c89"
      unitRef="usd">17600000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i2bdd73feccad46d39db6c078a41d1a07_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzY1MTk_caec6f71-90c3-4bd9-a269-b63194f44e85"
      unitRef="usd">32900000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:DebtInstrumentConvertibleRemainingDiscountAmortizationPeriod1
      contextRef="ic45a4981fa4b4635b9c8196a1077c18e_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzY1OTA_7e0103fb-1b4d-4397-9c01-f4d5df8cda17">P3Y4M24D</us-gaap:DebtInstrumentConvertibleRemainingDiscountAmortizationPeriod1>
    <enph:DebtInstrumentConvertibleConversionShares
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzY4NDM_af54d551-3461-4c8c-a3da-fc4e98c43ccc"
      unitRef="shares">6400000</enph:DebtInstrumentConvertibleConversionShares>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzcwMTE_b44e4579-58c8-4cd7-b36a-3bdbf567e167"
      unitRef="usdPerShare">20.5010</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:PaymentsForHedgeFinancingActivities
      contextRef="ibead413bd8f64eae80dc65cf6dc2c392_D20190605-20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzcxNTA_9a0cb965-58f3-4e6b-99f2-269bcff43545"
      unitRef="usd">36300000</us-gaap:PaymentsForHedgeFinancingActivities>
    <us-gaap:DebtConversionOriginalDebtAmount1
      contextRef="ic23299c12aec463a881020a65b48bdf9_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY3NDE_4fca6cc9-2217-492e-acf3-1e9d6a806f2b"
      unitRef="usd">43900000</us-gaap:DebtConversionOriginalDebtAmount1>
    <enph:DebtConversionConvertedInstrumentSharesIssuable
      contextRef="ic23299c12aec463a881020a65b48bdf9_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzQ5NDc4MDIzNDAwMTM_6d453014-b8ed-491a-9cc6-8f1e43be5549"
      unitRef="shares">2100000</enph:DebtConversionConvertedInstrumentSharesIssuable>
    <us-gaap:DebtConversionConvertedInstrumentSharesIssued1
      contextRef="ic23299c12aec463a881020a65b48bdf9_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY3NTg_98509ab0-3cd6-41cc-b91d-4471b1fa603d"
      unitRef="shares">1900000</us-gaap:DebtConversionConvertedInstrumentSharesIssued1>
    <enph:DebtInstrumentConvertibleConversionShares
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY3NzI_b7103518-58a8-4556-a9a5-92584236ed0c"
      unitRef="shares">4300000</enph:DebtInstrumentConvertibleConversionShares>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzc3NDY_5c7e6d12-7be6-4c0c-9e95-cf6c026b4336"
      unitRef="shares">6400000</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzc4NTU_6cd40e14-7ddb-403d-b360-84419b348761"
      unitRef="usdPerShare">25.2320</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <us-gaap:ProceedsFromIssuanceOfWarrants
      contextRef="ice23f43963d64f0ea963c1407aa780a1_D20190605-20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzc5MjY_3ab02bb1-bdcb-4135-878f-4783a50b8841"
      unitRef="usd">29800000</us-gaap:ProceedsFromIssuanceOfWarrants>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzg0NTA_08ab566a-9609-46c6-b373-fc8394b69876"
      unitRef="usdPerShare">20.5010</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzg0NTY_6cd40e14-7ddb-403d-b360-84419b348761"
      unitRef="usdPerShare">25.2320</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <enph:DebtConversionConvertedInstrumentSharesIssuable
      contextRef="ic23299c12aec463a881020a65b48bdf9_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY3ODk_943f5620-418f-4f69-b1a5-171697c2a5eb"
      unitRef="shares">2100000</enph:DebtConversionConvertedInstrumentSharesIssuable>
    <us-gaap:DebtConversionConvertedInstrumentSharesIssued1
      contextRef="ic23299c12aec463a881020a65b48bdf9_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY4MDc_98509ab0-3cd6-41cc-b91d-4471b1fa603d"
      unitRef="shares">1900000</us-gaap:DebtConversionConvertedInstrumentSharesIssued1>
    <enph:DebtInstrumentConvertibleConversionShares
      contextRef="i191fe245b1ff419b9f192629381df827_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjYvZnJhZzpiNzZkMzI1YjE1YWM0Njk3YTg2M2VlYWQxZjhkNGJkYS90ZXh0cmVnaW9uOmI3NmQzMjViMTVhYzQ2OTdhODYzZWVhZDFmOGQ0YmRhXzYwNDczMTM5NjY4MjE_b7103518-58a8-4556-a9a5-92584236ed0c"
      unitRef="shares">4300000</enph:DebtInstrumentConvertibleConversionShares>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i469a49182d3c4744a7628ccfbad19593_I20180831"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90ZXh0cmVnaW9uOjlkMDNmMmVmYjgxMDQ5NmQ5NTM3ZWFlYTNlNDdkMTE5XzMy_e084ffb8-d1c1-424b-a119-6f4d1bd4a1ed"
      unitRef="usd">65000000.0</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i469a49182d3c4744a7628ccfbad19593_I20180831"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90ZXh0cmVnaW9uOjlkMDNmMmVmYjgxMDQ5NmQ5NTM3ZWFlYTNlNDdkMTE5XzY1_f00a626a-e553-4140-a97a-80152e1ce1dd"
      unitRef="number">0.040</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtConversionOriginalDebtAmount1
      contextRef="i6d3d9446d7dc4af7991ba784812b748f_D20190605-20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90ZXh0cmVnaW9uOjlkMDNmMmVmYjgxMDQ5NmQ5NTM3ZWFlYTNlNDdkMTE5XzMwNA_f268fcff-4df8-456a-9cd4-d3201264098e"
      unitRef="usd">60000000.0</us-gaap:DebtConversionOriginalDebtAmount1>
    <us-gaap:DebtConversionConvertedInstrumentSharesIssued1
      contextRef="i00095223617d49de99811648271fa106_D20190605-20190605"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90ZXh0cmVnaW9uOjlkMDNmMmVmYjgxMDQ5NmQ5NTM3ZWFlYTNlNDdkMTE5XzM4NA_a4431697-e9f1-45d9-9ad3-dd7c16cca9d9"
      unitRef="shares">10801080</us-gaap:DebtConversionConvertedInstrumentSharesIssued1>
    <us-gaap:RepaymentsOfConvertibleDebt
      contextRef="i00095223617d49de99811648271fa106_D20190605-20190605"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90ZXh0cmVnaW9uOjlkMDNmMmVmYjgxMDQ5NmQ5NTM3ZWFlYTNlNDdkMTE5XzQ0Ng_b1d7732a-09e4-4324-a844-82f781523098"
      unitRef="usd">6000000.0</us-gaap:RepaymentsOfConvertibleDebt>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i185a458a13d94cebb99034a7925ff44b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90ZXh0cmVnaW9uOjlkMDNmMmVmYjgxMDQ5NmQ5NTM3ZWFlYTNlNDdkMTE5XzQ3Mg_2860846c-9bb2-4014-ad98-b85f8b54a09b"
      unitRef="usd">5000000.0</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i3c0f58cfba6740968643ad75296c98d6_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90ZXh0cmVnaW9uOjlkMDNmMmVmYjgxMDQ5NmQ5NTM3ZWFlYTNlNDdkMTE5XzQ3Mg_8923255e-e24b-4278-9668-31e62e0c4e53"
      unitRef="usd">5000000.0</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i469a49182d3c4744a7628ccfbad19593_I20180831"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90ZXh0cmVnaW9uOjlkMDNmMmVmYjgxMDQ5NmQ5NTM3ZWFlYTNlNDdkMTE5XzYyNw_f00a626a-e553-4140-a97a-80152e1ce1dd"
      unitRef="number">0.040</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i469a49182d3c4744a7628ccfbad19593_I20180831"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90ZXh0cmVnaW9uOjlkMDNmMmVmYjgxMDQ5NmQ5NTM3ZWFlYTNlNDdkMTE5XzEzOTg_ec6528a7-ca29-4939-929d-4d8618a778bf"
      unitRef="usdPerShare">5.56</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:DebtInstrumentRedemptionPricePercentage
      contextRef="i9247387303894b238b5fdf7012992e42_D20180801-20180831"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90ZXh0cmVnaW9uOjlkMDNmMmVmYjgxMDQ5NmQ5NTM3ZWFlYTNlNDdkMTE5XzE5OTQ_3d5fb9f4-d168-42de-9266-422dc51c3bf4"
      unitRef="number">1</us-gaap:DebtInstrumentRedemptionPricePercentage>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="id5855f2bb3474f0f900f9e4bf6f7b386_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90YWJsZTpjNGMwOGFmY2U2YmQ0YmUyYjY3OTYxMWZmZDQ1ZWJhYi90YWJsZXJhbmdlOmM0YzA4YWZjZTZiZDRiZTJiNjc5NjExZmZkNDVlYmFiXzQtNS0xLTEtMA_2918aa4f-5cf4-4780-9bc5-03a39e6b7c8e"
      unitRef="usd">200000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="ic6801e0858d04e94a69208a8fcf8d8ae_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90YWJsZTpjNGMwOGFmY2U2YmQ0YmUyYjY3OTYxMWZmZDQ1ZWJhYi90YWJsZXJhbmdlOmM0YzA4YWZjZTZiZDRiZTJiNjc5NjExZmZkNDVlYmFiXzQtNy0xLTEtMA_50184f19-91ef-484b-8937-3b9912e7de6b"
      unitRef="usd">1226000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="id5855f2bb3474f0f900f9e4bf6f7b386_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90YWJsZTpjNGMwOGFmY2U2YmQ0YmUyYjY3OTYxMWZmZDQ1ZWJhYi90YWJsZXJhbmdlOmM0YzA4YWZjZTZiZDRiZTJiNjc5NjExZmZkNDVlYmFiXzYtNS0xLTEtMA_3f0ec3c7-58bb-444a-ab17-6354affd89bf"
      unitRef="usd">40000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="ic6801e0858d04e94a69208a8fcf8d8ae_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90YWJsZTpjNGMwOGFmY2U2YmQ0YmUyYjY3OTYxMWZmZDQ1ZWJhYi90YWJsZXJhbmdlOmM0YzA4YWZjZTZiZDRiZTJiNjc5NjExZmZkNDVlYmFiXzYtNy0xLTEtMA_50c9e976-55e0-476c-8eb4-2284ce683d3b"
      unitRef="usd">245000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:InterestExpenseDebt
      contextRef="id5855f2bb3474f0f900f9e4bf6f7b386_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90YWJsZTpjNGMwOGFmY2U2YmQ0YmUyYjY3OTYxMWZmZDQ1ZWJhYi90YWJsZXJhbmdlOmM0YzA4YWZjZTZiZDRiZTJiNjc5NjExZmZkNDVlYmFiXzctNS0xLTEtMA_b5f714f1-71f4-4fa3-ad5e-3a64c4911031"
      unitRef="usd">240000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="ic6801e0858d04e94a69208a8fcf8d8ae_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xNjkvZnJhZzo5ZDAzZjJlZmI4MTA0OTZkOTUzN2VhZWEzZTQ3ZDExOS90YWJsZTpjNGMwOGFmY2U2YmQ0YmUyYjY3OTYxMWZmZDQ1ZWJhYi90YWJsZXJhbmdlOmM0YzA4YWZjZTZiZDRiZTJiNjc5NjExZmZkNDVlYmFiXzctNy0xLTEtMA_d4e51e4e-8a42-448c-ac47-af3739ac0921"
      unitRef="usd">1471000</us-gaap:InterestExpenseDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="i4c5113dbc392473fb1cfafa92282176b_D20171201-20171231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xODQvZnJhZzpmMDQ5M2U1ZGM1ZTg0ZjNiYWZkOGY2OTk4ZTBjZjI5Mi90ZXh0cmVnaW9uOmYwNDkzZTVkYzVlODRmM2JhZmQ4ZjY5OThlMGNmMjkyXzMxNg_2547df98-a7d4-41e0-bbe3-3ef8bd579b9d"
      unitRef="usd">2800000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="id813cd8ddfe34283bed2286570b72c34_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xODQvZnJhZzpmMDQ5M2U1ZGM1ZTg0ZjNiYWZkOGY2OTk4ZTBjZjI5Mi90ZXh0cmVnaW9uOmYwNDkzZTVkYzVlODRmM2JhZmQ4ZjY5OThlMGNmMjkyXzY0OQ_188ba2f8-f780-4f2b-89a4-d29a631f1193"
      unitRef="usd">5600000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="i21cf380863fc4214a1f8c9f1eaa2da60_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xODQvZnJhZzpmMDQ5M2U1ZGM1ZTg0ZjNiYWZkOGY2OTk4ZTBjZjI5Mi90ZXh0cmVnaW9uOmYwNDkzZTVkYzVlODRmM2JhZmQ4ZjY5OThlMGNmMjkyXzQ5NDc4MDIzMjYwNzk_0a089a05-7dc6-424a-a04e-5cba6426a2f1"
      unitRef="usd">1900000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90ZXh0cmVnaW9uOmU5YmY3OGM5ZDA1NzRjYmJiNTVlZmFmNjQ0NmI1MjAyXzUyNg_4f65e803-fbce-4bc5-aa68-21f6a36011e1">COMMITMENTS AND CONTINGENCIES&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Operating Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company leases office facilities under noncancelable operating leases that expire on various dates through 2031, some of which may include options to extend the leases for up to 12 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease expense are presented as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:70.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;Operating lease costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,332&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,041&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease liabilities are presented as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;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:72.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.694%"/&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:11.695%"/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease liabilities, current (Accrued liabilities)&lt;/span&gt;&lt;/div&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,542&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,170&#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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzMtMC0xLTEtMA_766bb3d6-016b-4778-93f1-6a567ab29df4"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzMtMC0xLTEtMA_9eb08d1c-9150-4bae-bafc-7f161223387f"&gt;Operating lease liabilities, noncurrent (Other liabilities)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;15,209&#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:9pt;font-weight:400;line-height:100%"&gt;9,542&#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;div style="padding-left:15.75pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total operating lease liabilities&lt;/span&gt;&lt;/div&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19,751&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;12,712&#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 style="height:12pt"&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:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000;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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Supplemental lease information:&lt;/span&gt;&lt;/div&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average remaining lease term&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;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:400;line-height:100%"&gt;6.4 years&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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5.5 years&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average discount rate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7.7%&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:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.6%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash flow and other information related to operating leases, are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:69.806%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.081%"/&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.083%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="background-color:#ffffff;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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:15.75pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating cash flows from operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,762&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Non-cash investing activities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:15.75pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lease liabilities arising from obtaining right-of-use assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;10,625&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,834&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Undiscounted cash flows of operating lease liabilities as of December&#160;31, 2020 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:86.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.620%"/&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:8pt;font-weight:700;line-height:100%"&gt;Lease Amounts&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Year:&lt;/span&gt;&lt;/div&gt;&lt;/td&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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2021&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,830&#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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2022&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:9pt;font-weight:400;line-height:100%"&gt;4,677&#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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&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:9pt;font-weight:400;line-height:100%"&gt;4,056&#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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&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:9pt;font-weight:400;line-height:100%"&gt;3,069&#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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&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:9pt;font-weight:400;line-height:100%"&gt;2,275&#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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2026 and thereafter&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:9pt;font-weight:400;line-height:100%"&gt;3,968&#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;div style="padding-left:20.25pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total lease payments&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;23,875&#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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: imputed lease interest&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;(4,124)&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;div style="padding-left:20.25pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;19,751&#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-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Purchase Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has contractual obligations related to component inventory that its contract manufacturers procure on its behalf in accordance with its production forecast as well as other inventory related purchase commitments. As of December&#160;31, 2020, these purchase obligations totaled approximately $162.2&#160;million.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Letter of Credits&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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, 2019, the Company had a standby letter of credit in the aggregate amount of $44.7 million, primarily in connection with one of its customer contracts. The letter of credit served as a performance security for product delivered to the customer in the first quarter of 2020 and expired on April 30, 2020. No amounts were drawn against this letter of credit. As of December&#160;31, 2020, the Company has no letter of credits outstanding.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Litigation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 various legal proceedings relating to claims arising out of its operations that have not been fully resolved. The outcome of litigation is inherently uncertain. If one or more legal matters were resolved against the Company in a reporting period for amounts above management&#x2019;s expectations, the Company&#x2019;s business, results of operations, financial position and cash flows for that reporting period could be materially adversely affected. As of February&#160;12, 2021, the Company is not currently a party to any matters that the management expects will have an adverse material effect on the Company&#x2019;s consolidated financial position, results of operations or cash flows.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Contingencies&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On March 26, 2020, the Office of the United States Trade Representative (the &#x201c;USTR&#x201d;) announced certain exclusion requests related to tariffs on Chinese imported microinverter products that fit the dimensions and weight limits within a Section 301 Tariff exclusion under U.S. note 20(ss)(40) to subchapter III of chapter 99 of the Harmonized Tariff Schedule of the United States (the &#x201c;Tariff Exclusion&#x201d;). The Tariff Exclusion applies to covered products under the China Section 301 Tariff Actions (&#x201c;Section 301 Tariffs&#x201d;) taken by the USTR exported from China to the United States from September 24, 2018 until August 7, 2020. Accordingly, the Company has sought refunds totaling approximately $38.9 million plus approximately $0.6&#160;million accrued interest on tariffs previously paid from September 24, 2018 to March 31, 2020 for certain microinverters that qualify for the Tariff Exclusion. The refund request was subject to review and approval by the U.S. Customs and Border Protection; therefore, the Company assessed the probable loss recovery in the year ended December 31, 2020 is equal to the approved refund requests available to us prior to issuance of the financial statements on February 12, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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, 2020, the Company had received $24.8 million of tariff refunds and accrued for the remaining $14.7 million tariff refunds that were approved, however, not yet received on or before December&#160;31, 2020. For the year ended December 31, 2020, the Company recorded $38.9 million as a reduction to cost of revenues in the Company&#x2019;s consolidated statements of operations as the approved refunds relate to paid tariffs previously recorded to cost of revenues, therefore, the Company recorded the corresponding approved tariff refunds as credits to cost of revenues in the current period. For the year ended December 31, 2020, the Company recorded the $0.6&#160;million accrued interest as interest income in the consolidated statement of operations. The tariff refund receivable of $14.7 million is recorded as a reduction of accounts payable to Flex Ltd. and affiliates (&#x201c;Flex&#x201d;), the Company&#x2019;s manufacturing partner and the importer of record who will first receive the tariff refunds, on the Company&#x2019;s consolidated balance sheet as of December&#160;31, 2020. The Company is unable to predict the timing of receipt of the $14.7 million approved.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Tariff Exclusion expired on August 7, 2020 and those microinverter products now are subject to tariffs. The Company continues to pay Section 301 Tariffs on its storage and communication products and other accessories imported from China which are not subject to the Tariff Exclusion.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:LesseeOperatingLeaseRenewalTerm
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90ZXh0cmVnaW9uOmU5YmY3OGM5ZDA1NzRjYmJiNTVlZmFmNjQ0NmI1MjAyXzIxMQ_908a2c91-a214-4a1c-b7cb-7a18635aefb1">P12Y</us-gaap:LesseeOperatingLeaseRenewalTerm>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90ZXh0cmVnaW9uOmU5YmY3OGM5ZDA1NzRjYmJiNTVlZmFmNjQ0NmI1MjAyXzUzMg_cb7b5034-9ed4-4aa0-8195-8bc960397616">&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease expense are presented as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:70.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;Operating lease costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,332&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,041&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease liabilities are presented as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;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:72.576%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.694%"/&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:11.695%"/&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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease liabilities, current (Accrued liabilities)&lt;/span&gt;&lt;/div&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,542&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,170&#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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzMtMC0xLTEtMA_766bb3d6-016b-4778-93f1-6a567ab29df4"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzMtMC0xLTEtMA_9eb08d1c-9150-4bae-bafc-7f161223387f"&gt;Operating lease liabilities, noncurrent (Other liabilities)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;15,209&#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:9pt;font-weight:400;line-height:100%"&gt;9,542&#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;div style="padding-left:15.75pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total operating lease liabilities&lt;/span&gt;&lt;/div&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19,751&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;12,712&#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 style="height:12pt"&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:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:2pt solid #000;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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Supplemental lease information:&lt;/span&gt;&lt;/div&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average remaining lease term&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;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:400;line-height:100%"&gt;6.4 years&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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5.5 years&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average discount rate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7.7%&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:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.6%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash flow and other information related to operating leases, are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:69.806%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.081%"/&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.083%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="background-color:#ffffff;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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:15.75pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating cash flows from operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,762&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Non-cash investing activities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:15.75pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lease liabilities arising from obtaining right-of-use assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;10,625&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,834&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo5NWQ1NDJkOWJhZjY0YTc3YmUyZjc0MGRlNzdkOTk5YS90YWJsZXJhbmdlOjk1ZDU0MmQ5YmFmNjRhNzdiZTJmNzQwZGU3N2Q5OTlhXzMtNS0xLTEtMA_b635b197-3dc1-4536-ba71-efb666597ccc"
      unitRef="usd">5332000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo5NWQ1NDJkOWJhZjY0YTc3YmUyZjc0MGRlNzdkOTk5YS90YWJsZXJhbmdlOjk1ZDU0MmQ5YmFmNjRhNzdiZTJmNzQwZGU3N2Q5OTlhXzMtNy0xLTEtMA_284226e0-0027-4844-b5f8-2b30eafca590"
      unitRef="usd">4041000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzItMS0xLTEtMA_506613e0-22e4-4839-9f22-f5c43c1542a4"
      unitRef="usd">4542000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzItMy0xLTEtMA_51148eb1-d0db-4ef1-b06f-97ef5834bdc5"
      unitRef="usd">3170000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzMtMS0xLTEtMA_c6ca5d91-463b-4ae4-8f98-1de92ae17127"
      unitRef="usd">15209000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzMtMy0xLTEtMA_9003c526-4ded-41c2-8371-bac659d8361d"
      unitRef="usd">9542000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzQtMS0xLTEtMA_4abe88a7-52f1-485f-91cc-3c08a3bf669b"
      unitRef="usd">19751000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzQtMy0xLTEtMA_0e6a2c19-f128-4af6-9215-7f22137ee7cd"
      unitRef="usd">12712000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzctMS0xLTEtMA_3710c0ef-c7f4-4fa5-b77a-6e125337f5e6">P6Y4M24D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzctMy0xLTEtMA_1ccd9031-b105-47db-b25f-cf85244ac636">P5Y6M</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzgtMS0xLTEtMA_768bf407-0d74-4852-a124-c3cb7ef5282f"
      unitRef="number">0.077</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2ZGE3ODExZDcxOWQ0MjcxYjcyZjMxMTM1MzA5ZThhOS90YWJsZXJhbmdlOjZkYTc4MTFkNzE5ZDQyNzFiNzJmMzExMzUzMDllOGE5XzgtMy0xLTEtMA_3d433aef-9a91-4674-a22c-f03ae3a0a310"
      unitRef="number">0.086</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeasePayments
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZToyMjAyMzZmOGY3Y2Y0ZDQ2OGI4ODAxNGNiOTQ4NTA3MS90YWJsZXJhbmdlOjIyMDIzNmY4ZjdjZjRkNDY4Yjg4MDE0Y2I5NDg1MDcxXzQtNS0xLTEtMA_a882d325-147f-4c90-82eb-67503f6e6501"
      unitRef="usd">4762000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZToyMjAyMzZmOGY3Y2Y0ZDQ2OGI4ODAxNGNiOTQ4NTA3MS90YWJsZXJhbmdlOjIyMDIzNmY4ZjdjZjRkNDY4Yjg4MDE0Y2I5NDg1MDcxXzQtNy0xLTEtMA_326a3d39-40c5-4305-956f-38ec76ccad3a"
      unitRef="usd">3636000</us-gaap:OperatingLeasePayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZToyMjAyMzZmOGY3Y2Y0ZDQ2OGI4ODAxNGNiOTQ4NTA3MS90YWJsZXJhbmdlOjIyMDIzNmY4ZjdjZjRkNDY4Yjg4MDE0Y2I5NDg1MDcxXzctNS0xLTEtMA_3fd5e839-e12c-49b5-b3aa-54c437532f59"
      unitRef="usd">10625000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZToyMjAyMzZmOGY3Y2Y0ZDQ2OGI4ODAxNGNiOTQ4NTA3MS90YWJsZXJhbmdlOjIyMDIzNmY4ZjdjZjRkNDY4Yjg4MDE0Y2I5NDg1MDcxXzctNy0xLTEtMA_b03f9ff3-b7be-40c5-99ac-77e5cdaf004e"
      unitRef="usd">4834000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90ZXh0cmVnaW9uOmU5YmY3OGM5ZDA1NzRjYmJiNTVlZmFmNjQ0NmI1MjAyXzUzMw_0ddde09d-f5f1-4cef-bce5-b54b052ece85">&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Undiscounted cash flows of operating lease liabilities as of December&#160;31, 2020 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:86.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.620%"/&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:8pt;font-weight:700;line-height:100%"&gt;Lease Amounts&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Year:&lt;/span&gt;&lt;/div&gt;&lt;/td&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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2021&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,830&#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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2022&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:9pt;font-weight:400;line-height:100%"&gt;4,677&#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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&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:9pt;font-weight:400;line-height:100%"&gt;4,056&#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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&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:9pt;font-weight:400;line-height:100%"&gt;3,069&#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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&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:9pt;font-weight:400;line-height:100%"&gt;2,275&#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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2026 and thereafter&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:9pt;font-weight:400;line-height:100%"&gt;3,968&#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;div style="padding-left:20.25pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total lease payments&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;23,875&#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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: imputed lease interest&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;(4,124)&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;div style="padding-left:20.25pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;19,751&#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:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2OWI3M2EzYzM4NGU0N2UzYWZjY2YwMGE3M2U1M2U0MC90YWJsZXJhbmdlOjY5YjczYTNjMzg0ZTQ3ZTNhZmNjZjAwYTczZTUzZTQwXzMtMS0xLTEtMA_7b787147-5ec2-40dc-806f-127dccb1a706"
      unitRef="usd">5830000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2OWI3M2EzYzM4NGU0N2UzYWZjY2YwMGE3M2U1M2U0MC90YWJsZXJhbmdlOjY5YjczYTNjMzg0ZTQ3ZTNhZmNjZjAwYTczZTUzZTQwXzQtMS0xLTEtMA_13b0f23e-6cb1-4a69-9931-cdbe45459957"
      unitRef="usd">4677000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2OWI3M2EzYzM4NGU0N2UzYWZjY2YwMGE3M2U1M2U0MC90YWJsZXJhbmdlOjY5YjczYTNjMzg0ZTQ3ZTNhZmNjZjAwYTczZTUzZTQwXzUtMS0xLTEtMA_bba6d970-8085-4b5a-b2d0-c55d1d91d9b4"
      unitRef="usd">4056000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2OWI3M2EzYzM4NGU0N2UzYWZjY2YwMGE3M2U1M2U0MC90YWJsZXJhbmdlOjY5YjczYTNjMzg0ZTQ3ZTNhZmNjZjAwYTczZTUzZTQwXzYtMS0xLTEtMA_9f04ddd6-f7d8-4769-afee-c7a7fc818aa3"
      unitRef="usd">3069000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2OWI3M2EzYzM4NGU0N2UzYWZjY2YwMGE3M2U1M2U0MC90YWJsZXJhbmdlOjY5YjczYTNjMzg0ZTQ3ZTNhZmNjZjAwYTczZTUzZTQwXzctMS0xLTEtMA_46bb752b-1f25-4205-a40e-84eac23ef503"
      unitRef="usd">2275000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2OWI3M2EzYzM4NGU0N2UzYWZjY2YwMGE3M2U1M2U0MC90YWJsZXJhbmdlOjY5YjczYTNjMzg0ZTQ3ZTNhZmNjZjAwYTczZTUzZTQwXzgtMS0xLTEtMA_bf4acbea-c041-42c8-97d0-6177dedfc826"
      unitRef="usd">3968000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2OWI3M2EzYzM4NGU0N2UzYWZjY2YwMGE3M2U1M2U0MC90YWJsZXJhbmdlOjY5YjczYTNjMzg0ZTQ3ZTNhZmNjZjAwYTczZTUzZTQwXzktMS0xLTEtMA_d32a560f-547e-4151-9edd-d929eb4d14a0"
      unitRef="usd">23875000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2OWI3M2EzYzM4NGU0N2UzYWZjY2YwMGE3M2U1M2U0MC90YWJsZXJhbmdlOjY5YjczYTNjMzg0ZTQ3ZTNhZmNjZjAwYTczZTUzZTQwXzEwLTEtMS0xLTA_b8c90ddf-d166-4b6b-8eb0-5cc213cf000e"
      unitRef="usd">4124000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTMvZnJhZzplOWJmNzhjOWQwNTc0Y2JiYjU1ZWZhZjY0NDZiNTIwMi90YWJsZTo2OWI3M2EzYzM4NGU0N2UzYWZjY2YwMGE3M2U1M2U0MC90YWJsZXJhbmdlOjY5YjczYTNjMzg0ZTQ3ZTNhZmNjZjAwYTczZTUzZTQwXzExLTEtMS0xLTA_742007f0-4294-4369-9a73-296e96eb40ea"
      unitRef="usd">19751000</us-gaap:OperatingLeaseLiability>
    <us-gaap:PurchaseObligation
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8xOTkvZnJhZzo2ZDM0OWI2ZTFlZjk0YzlhODc5ODc1MDMxMzFmMDM3ZC90ZXh0cmVnaW9uOjZkMzQ5YjZlMWVmOTRjOWE4Nzk4NzUwMzEzMWYwMzdkXzMxOA_46eafd9f-24ae-4e70-8151-7493c069b41e"
      unitRef="usd">162200000</us-gaap:PurchaseObligation>
    <us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity
      contextRef="i0f00b48f549542709bd818b24be5a422_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMDIvZnJhZzpkZGZiZTdmNWY5YTM0M2Y4OGQ1MTFiN2NkNDlhMTMzNy90ZXh0cmVnaW9uOmRkZmJlN2Y1ZjlhMzQzZjg4ZDUxMWI3Y2Q0OWExMzM3XzEyNA_61587185-b618-45e0-b679-e9666f6e69a4"
      unitRef="usd">44700000</us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity>
    <us-gaap:LettersOfCreditOutstandingAmount
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMDIvZnJhZzpkZGZiZTdmNWY5YTM0M2Y4OGQ1MTFiN2NkNDlhMTMzNy90ZXh0cmVnaW9uOmRkZmJlN2Y1ZjlhMzQzZjg4ZDUxMWI3Y2Q0OWExMzM3XzMxMA_8762600f-aa27-48ca-b6c4-958b97d7e569"
      unitRef="usd">0</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:GainContingencyUnrecordedAmount
      contextRef="ic2f08648a1eb48ad97046496e9ea3f2f_I20200326"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMDgvZnJhZzoyODBhNjkzMTZiNWQ0ZDNkOTczZmU5NWM0Y2I4ZjQ1Yy90ZXh0cmVnaW9uOjI4MGE2OTMxNmI1ZDRkM2Q5NzNmZTk1YzRjYjhmNDVjXzcxMQ_bf70c6a2-bded-41ed-a6c6-b0275ee1c418"
      unitRef="usd">38900000</us-gaap:GainContingencyUnrecordedAmount>
    <us-gaap:GainContingencyUnrecordedAmount
      contextRef="i3697363b1e04408a8417facd7e19018e_I20200326"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMDgvZnJhZzoyODBhNjkzMTZiNWQ0ZDNkOTczZmU5NWM0Y2I4ZjQ1Yy90ZXh0cmVnaW9uOjI4MGE2OTMxNmI1ZDRkM2Q5NzNmZTk1YzRjYjhmNDVjXzU0OTc1NTgxNDE2MjU_c50c6350-de38-4109-aee3-60c3e3a29be0"
      unitRef="usd">600000</us-gaap:GainContingencyUnrecordedAmount>
    <enph:GainContingencyTariffRefund
      contextRef="i3e04ede40c974c2ca96c413815408e90_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMDgvZnJhZzoyODBhNjkzMTZiNWQ0ZDNkOTczZmU5NWM0Y2I4ZjQ1Yy90ZXh0cmVnaW9uOjI4MGE2OTMxNmI1ZDRkM2Q5NzNmZTk1YzRjYjhmNDVjXzEyMDI_3ec11f7b-cb02-487c-bc2a-616d3beede6c"
      unitRef="usd">24800000</enph:GainContingencyTariffRefund>
    <enph:GainContingencyTariffRefundReceivable
      contextRef="i2c27487fbc8945e7b32b5b2b8743b41b_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMDgvZnJhZzoyODBhNjkzMTZiNWQ0ZDNkOTczZmU5NWM0Y2I4ZjQ1Yy90ZXh0cmVnaW9uOjI4MGE2OTMxNmI1ZDRkM2Q5NzNmZTk1YzRjYjhmNDVjXzEyMzk_6997fd3f-c00b-4b3b-b8c7-e5eb3e6304b6"
      unitRef="usd">14700000</enph:GainContingencyTariffRefundReceivable>
    <us-gaap:FormerGainContingencyRecognizedInCurrentPeriod
      contextRef="i2c27487fbc8945e7b32b5b2b8743b41b_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMDgvZnJhZzoyODBhNjkzMTZiNWQ0ZDNkOTczZmU5NWM0Y2I4ZjQ1Yy90ZXh0cmVnaW9uOjI4MGE2OTMxNmI1ZDRkM2Q5NzNmZTk1YzRjYjhmNDVjXzEzNjc_3f9c5f8b-cf2e-46da-a948-f45e14d855ca"
      unitRef="usd">38900000</us-gaap:FormerGainContingencyRecognizedInCurrentPeriod>
    <us-gaap:FormerGainContingencyRecognizedInCurrentPeriod
      contextRef="id150194c8f2341bcb6fe63c40caefbfb_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMDgvZnJhZzoyODBhNjkzMTZiNWQ0ZDNkOTczZmU5NWM0Y2I4ZjQ1Yy90ZXh0cmVnaW9uOjI4MGE2OTMxNmI1ZDRkM2Q5NzNmZTk1YzRjYjhmNDVjXzQ5NDc4MDIzMjg0MjA_cf173cb2-face-4c3d-9e8f-5cec0237933b"
      unitRef="usd">600000</us-gaap:FormerGainContingencyRecognizedInCurrentPeriod>
    <enph:GainContingencyTariffRefundReceivable
      contextRef="i2c27487fbc8945e7b32b5b2b8743b41b_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMDgvZnJhZzoyODBhNjkzMTZiNWQ0ZDNkOTczZmU5NWM0Y2I4ZjQ1Yy90ZXh0cmVnaW9uOjI4MGE2OTMxNmI1ZDRkM2Q5NzNmZTk1YzRjYjhmNDVjXzE3MTg_6997fd3f-c00b-4b3b-b8c7-e5eb3e6304b6"
      unitRef="usd">14700000</enph:GainContingencyTariffRefundReceivable>
    <enph:GainContingencyTariffRefundReceivable
      contextRef="i2c27487fbc8945e7b32b5b2b8743b41b_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMDgvZnJhZzoyODBhNjkzMTZiNWQ0ZDNkOTczZmU5NWM0Y2I4ZjQ1Yy90ZXh0cmVnaW9uOjI4MGE2OTMxNmI1ZDRkM2Q5NzNmZTk1YzRjYjhmNDVjXzU0OTc1NTgxNDIxNTk_6997fd3f-c00b-4b3b-b8c7-e5eb3e6304b6"
      unitRef="usd">14700000</enph:GainContingencyTariffRefundReceivable>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTQvZnJhZzo5YTA2MGQ1NzFhYjU0ZGExOWFlY2IzOGYwNjg4NDU4Zi90ZXh0cmVnaW9uOjlhMDYwZDU3MWFiNTRkYTE5YWVjYjM4ZjA2ODg0NThmXzg3OTYwOTMwMjI2NTA_5d44d008-c270-4d81-b984-c9ea7a94ebef">SALE OF COMMON STOCKIn February 2018, the Company entered into a Securities Purchase Agreement with an investor pursuant to which the Company, in a private placement, issued and sold to the investor approximately 9.5&#160;million shares of the Company&#x2019;s common stock at a price per share of $2.10, for gross proceeds of approximately $20.0&#160;million.</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction
      contextRef="i3ab3d0a1f9ef4539bec077fb8bb60884_D20180201-20180228"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTQvZnJhZzo5YTA2MGQ1NzFhYjU0ZGExOWFlY2IzOGYwNjg4NDU4Zi90ZXh0cmVnaW9uOjlhMDYwZDU3MWFiNTRkYTE5YWVjYjM4ZjA2ODg0NThmXzE4MA_1c149960-945f-4a04-b2b4-d857077adc78"
      unitRef="shares">9500000</us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction>
    <us-gaap:SaleOfStockPricePerShare
      contextRef="ie25c0d9d115d421bb34cc104c1e1fccc_I20180228"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTQvZnJhZzo5YTA2MGQ1NzFhYjU0ZGExOWFlY2IzOGYwNjg4NDU4Zi90ZXh0cmVnaW9uOjlhMDYwZDU3MWFiNTRkYTE5YWVjYjM4ZjA2ODg0NThmXzI0NA_4225b0e0-6c05-4899-81ea-2dba2f18507e"
      unitRef="usdPerShare">2.10</us-gaap:SaleOfStockPricePerShare>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="i3ab3d0a1f9ef4539bec077fb8bb60884_D20180201-20180228"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTQvZnJhZzo5YTA2MGQ1NzFhYjU0ZGExOWFlY2IzOGYwNjg4NDU4Zi90ZXh0cmVnaW9uOjlhMDYwZDU3MWFiNTRkYTE5YWVjYjM4ZjA2ODg0NThmXzI3MA_1082856d-d4a2-4bee-a4d4-9146b6001941"
      unitRef="usd">20000000.0</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjMvZnJhZzpjN2IwYTFjZGIwYTI0NDYyYTQ0ZDNmMmFmODg1MzA3ZC90ZXh0cmVnaW9uOmM3YjBhMWNkYjBhMjQ0NjJhNDRkM2YyYWY4ODUzMDdkXzEx_8d17049e-1fd3-483f-82ba-4179ac4e0adb">STOCK-BASED COMPENSATION&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:700;line-height:120%"&gt;Description of Equity Incentive Plans&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-style:italic;font-weight:400;line-height:120%"&gt;2006 Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the Company&#x2019;s 2006 Equity Incentive Plan (the &#x201c;2006 Plan&#x201d;), equity awards granted generally vest over a 4&#x2011;year period from the date of grant with a contractual term of up to 10 years. As of December&#160;31, 2020, there were less than 0.1&#160;million shares of options outstanding under the 2006 Plan. No further stock options or other stock awards may be granted under the 2006 Plan. &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-style:italic;font-weight:400;line-height:120%"&gt;2011 Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the 2011 Equity Incentive Plan (the &#x201c;2011 Plan&#x201d;), the Company could initially issue up to 2,643,171&#160;shares of its common stock pursuant to stock options, stock appreciation rights (&#x201c;SARS&#x201d;), restricted stock awards (&#x201c;RSA&#x201d;), RSUs, PSUs, and other forms of equity compensation, or collectively, stock awards, all of which may be granted to employees, including officers, and to non-employee directors and consultants. Options granted under the 2011 Plan before August&#160;1, 2012 generally expire 10 years after the grant date and options granted thereafter generally expire 7 years after the grant date. Equity awards granted under the 2011 Plan generally vest over a 4-year period from the date of grant based on continued employment. The number of shares of the Company&#x2019;s common stock authorized for issuance under the 2011 Plan automatically increases on each January&#160;1 by 4.5% of the total number of shares of the Company&#x2019;s common stock outstanding on December&#160;31 of the preceding calendar year, or such lesser number of shares of common stock as determined by the board of directors. As of December&#160;31, 2020, 8,940,388&#160;shares remained available for issuance pursuant to future grants under the 2011 Plan. On January 1, 2021, the shares available for issuance under the 2011 Plan automatically increased by 5,803,296&#160;shares.&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-style:italic;font-weight:400;line-height:120%"&gt;2011 Employee Stock Purchase Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The 2011 Employee Stock Purchase Plan (&#x201c;ESPP&#x201d;) became effective immediately upon the execution and delivery of the underwriting agreement for the Company&#x2019;s initial public offering on March&#160;29, 2012. The ESPP authorized the issuance of 669,603&#160;shares of the Company&#x2019;s common stock pursuant to purchase rights granted to employees. The number of shares of common stock reserved for issuance will automatically increase, on each January&#160;1, by a lesser of (i)&#160;330,396&#160;shares of the Company&#x2019;s common stock or (ii)&#160;1.0% of the total number of shares of the Company&#x2019;s common stock outstanding on December&#160;31 of the preceding calendar year, as determined by the Company&#x2019;s board of directors. At the Annual Meeting of Stockholders held on May 18, 2017 the Company&#x2019;s stockholders approved a one-time amendment to the Company&#x2019;s ESPP to increase the aggregate number of shares available for purchase by 400,000&#160;shares and to increase the annual automatic minimum increase in shares reserved for issuance from 330,396 to 700,000&#160;shares effective January 1, 2018. As of December&#160;31, 2020, 1,288,887&#160;shares remained available for future issuance under the ESPP. On January 1, 2021, the shares available for issuance under the ESPP automatically increased by 700,000&#160;shares.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The ESPP is implemented by concurrent offering periods and each offering period may contain up to four&#160;interim purchase periods. In general, offering periods consist of the 24-month periods commencing on each May&#160;15 and November&#160;15 of a calendar year.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Generally, all full-time employees in Australia, France, India, Mexico, New Zealand, the Netherlands and the United States, including executive officers, are eligible to participate in the ESPP. The ESPP permits eligible employees to purchase the Company&#x2019;s common stock through payroll deductions, which may not exceed 15% of the employee&#x2019;s total compensation subject to certain limits. Stock may be purchased under the plan at a price equal to 85% of the fair market value of the Company&#x2019;s stock on either the date of purchase or the first day of an offering period, whichever is lower. A two&#x2011;year look-back feature in the Company&#x2019;s ESPP causes an offering period to reset if the fair value of the Company&#x2019;s common stock on a purchase date is less than that on the initial offering date for that offering period. The reset feature, when triggered, will be accounted for as a modification to the original offering, resulting in additional expense to be recognized over the 24-month period of the new offering. During any calendar year, participants may not purchase shares of common stock having a value greater than $25,000, based on the fair market value per share of the common stock at the beginning of an offering period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Valuation of Equity Awards&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Stock Options&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 each option granted was estimated on the date of grant using the Black-Scholes option-pricing model with the following assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Expected term - &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The expected term of the option awards represents the period of time between the grant date of the option awards and the date the option awards are either exercised, converted or canceled, including an estimate for those option awards still outstanding. The Company used the simplified method, as permitted by the SEC for companies with a limited history of stock option exercise activity, to determine the expected term for its option grants.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Expected volatility - &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The expected volatility was calculated based on the Company&#x2019;s historical stock prices, supplemented&#160;as necessary&#160;with historical volatility of the common stock of several peer companies with characteristics similar to those of the Company.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Risk-free interest rate - &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The risk-free interest rate was based on the U.S. Treasury yield curve in effect at the time of grant and with a maturity that approximated the Company&#x2019;s expected term.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;padding-left:45pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Dividend yield - &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The dividend yield was based on the Company&#x2019;s dividend history and the anticipated dividend payout over its expected term.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the weighted-average grant date fair value of options granted for the periods presented and the assumptions used to estimate those values using a Black-Scholes option pricing model.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&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:59.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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.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.330%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2019&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:8pt;font-weight:700;line-height:100%"&gt;2018&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average grant date fair value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;38.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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9.16&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.83&lt;/span&gt;&lt;/td&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Expected term (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.8&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.8&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4.0&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Expected volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;86.4%&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;89.1%&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;88.5%&lt;/span&gt;&lt;/td&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Annual risk-free rate of return&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.1%&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.1%&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.6%&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;%&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;%&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&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-style:italic;font-weight:400;line-height:120%"&gt;Restricted Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 Company&#x2019;s restricted stock units (&#x201c;RSU&#x201d;) awards granted is based upon the closing price of the Company&#x2019;s stock price on the date of grant.&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-style:italic;font-weight:400;line-height:120%"&gt;Performance Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 Company&#x2019;s non-market performance stock units (&#x201c;PSU&#x201d;) awards granted was based upon the closing price of the Company&#x2019;s stock price on the date of grant. The fair value of awards of the Company&#x2019;s PSU awards containing market conditions was determined using a Monte Carlo simulation model based upon the terms of the conditions, the expected volatility of the underlying security, and other relevant factors.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Stock-based Compensation Expense&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation expense for all stock-based awards expected to vest is measured at fair value on the date of grant and recognized ratably over the requisite service period. The following table summarizes the components of total stock-based compensation expense included in the consolidated statements of operations for the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:55.332%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.935%"/&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.938%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,759&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,650&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,071&#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 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;12,701&#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:9pt;font-weight:400;line-height:100%"&gt;4,897&#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:9pt;font-weight:400;line-height:100%"&gt;2,940&#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 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;11,548&#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:9pt;font-weight:400;line-height:100%"&gt;5,678&#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:9pt;font-weight:400;line-height:100%"&gt;3,074&#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 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;14,495&#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:9pt;font-weight:400;line-height:100%"&gt;7,216&#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:9pt;font-weight:400;line-height:100%"&gt;4,347&#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 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Restructuring&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;735&#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:9pt;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;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;42,503&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;20,176&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;11,432&#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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income tax benefit included in the provision for incomes taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;61,389&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;8,185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-indent:27pt"&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 the various types of stock-based compensation expense for the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:55.332%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.935%"/&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.938%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Stock options, RSUs, and PSUs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;39,841&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19,216&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;10,691&#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 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Employee stock purchase plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;2,662&#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:9pt;font-weight:400;line-height:100%"&gt;960&#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:9pt;font-weight:400;line-height:100%"&gt;741&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;42,503&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;20,176&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;11,432&#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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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, 2020, there was approximately $89.7&#160;million of total unrecognized stock-based compensation expense related to unvested equity awards, which are expected to be recognized over a weighted-average period of 2.9 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Equity Awards Activity&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Stock Options&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a summary of stock option activity.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&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:45.752%"/&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.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.641%"/&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:8pt;font-weight:700;line-height:100%"&gt;Number of&lt;br/&gt;Shares&lt;br/&gt;Outstanding&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Exercise&#160;Price&lt;br/&gt;per Share&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Term&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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:700;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(Years)&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:120%"&gt;Outstanding at December 31, 2017&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:9pt;font-weight:400;line-height:100%"&gt;8,426&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.77&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;213&#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:9pt;font-weight:400;line-height:100%"&gt;4.43&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;(1,346)&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:9pt;font-weight:400;line-height:100%"&gt;1.75&#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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,096&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(521)&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:9pt;font-weight:400;line-height:100%"&gt;2.94&#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:9pt;font-weight:400;line-height:120%"&gt;Outstanding at December 31, 2018&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:9pt;font-weight:400;line-height:100%"&gt;6,772&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.76&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;43&#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:9pt;font-weight:400;line-height:100%"&gt;14.58&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;(2,616)&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:9pt;font-weight:400;line-height:100%"&gt;1.22&#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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;31,093&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(102)&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:9pt;font-weight:400;line-height:100%"&gt;4.07&#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:9pt;font-weight:400;line-height:120%"&gt;Outstanding at December 31, 2019&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:9pt;font-weight:400;line-height:100%"&gt;4,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;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.18&#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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;11&#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:9pt;font-weight:400;line-height:100%"&gt;64.17&#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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;(1,494)&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:9pt;font-weight:400;line-height:100%"&gt;2.74&#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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;114,089&#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:9pt;font-weight:400;line-height:120%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(82)&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:9pt;font-weight:400;line-height:100%"&gt;6.94&#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:9pt;font-weight:400;line-height:120%"&gt;Outstanding 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:9pt;font-weight:400;line-height:100%"&gt;2,532&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.96&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.7&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;439,268&#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:9pt;font-weight:400;line-height:120%"&gt;Vested and expected to vest at December 31, 2020&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:9pt;font-weight:400;line-height:100%"&gt;2,532&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.96&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.7&lt;/span&gt;&lt;/td&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;439,268&#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:9pt;font-weight:400;line-height:120%"&gt;Exercisable at December 31, 2020&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:9pt;font-weight:400;line-height:100%"&gt;2,089&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.95&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.7&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;362,526&#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;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:8.724%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:89.076%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;padding-left:27pt;text-align:justify;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&#160;&#160;&#160;&#160;The intrinsic value of options exercised is based upon the value of the Company&#x2019;s stock at exercise. The intrinsic value of options outstanding, vested and expected to vest, and exercisable as of December&#160;31, 2020 is based on the closing price of the last trading day during the period ended December&#160;31, 2020. The Company&#x2019;s stock fair value used in this computation was $175.47&#160;per share.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&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 information about stock options outstanding at December&#160;31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:31.550%"/&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.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.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.642%"/&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:0 1pt"/&gt;&lt;td colspan="15" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Options Outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Options Exercisable&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:8pt;font-weight:700;line-height:100%"&gt;Range of Exercise Prices&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:8pt;font-weight:700;line-height:100%"&gt;Number of&lt;br/&gt;Shares&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Life&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:8pt;font-weight:700;line-height:100%"&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="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:8pt;font-weight:700;line-height:100%"&gt;Number of&lt;br/&gt;Shares&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(Years)&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:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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: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;div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$0.70 &#x2014;&#x2013; $1.11&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;555&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4.2&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.85&#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:9pt;font-weight:400;line-height:100%"&gt;448&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.83&#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;div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$1.29 &#x2014;&#x2013; $1.29&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;1,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 colspan="3" style="background-color:#ffffff;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:400;line-height:100%"&gt;3.7&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;1.29&#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:9pt;font-weight:400;line-height:100%"&gt;813&#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:9pt;font-weight:400;line-height:100%"&gt;1.29&#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;div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$1.31 &#x2014;&#x2013; $1.31&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;670&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.3&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;1.31&#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:9pt;font-weight:400;line-height:100%"&gt;587&#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:9pt;font-weight:400;line-height:100%"&gt;1.31&#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;div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$1.37 &#x2014;&#x2013; $14.58&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;296&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.6&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;5.56&#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:9pt;font-weight:400;line-height:100%"&gt;235&#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:9pt;font-weight:400;line-height:100%"&gt;6.37&#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;div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$64.17 &#x2014;&#x2013; $64.17&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;11&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.3&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;64.17&#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:9pt;font-weight:400;line-height:100%"&gt;6&#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:9pt;font-weight:400;line-height:100%"&gt;64.17&#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 19pt;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;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;2,532&#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 colspan="3" style="background-color:#ffffff;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:400;line-height:100%"&gt;3.7&lt;/span&gt;&lt;/td&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.96&#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;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:9pt;font-weight:400;line-height:100%"&gt;2,089&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.95&#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;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Restricted Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a summary of RSU activity.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&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:45.752%"/&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.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.641%"/&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:8pt;font-weight:700;line-height:100%"&gt;Number of&lt;br/&gt;Shares&lt;br/&gt;Outstanding&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Fair Value&lt;br/&gt;per Share at&lt;br/&gt;Grant Date&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Term&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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:700;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(Years)&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2017&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:9pt;font-weight:400;line-height:100%"&gt;3,505&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.03&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;3,152&#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:9pt;font-weight:400;line-height:100%"&gt;4.45&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;font-weight:400;line-height:100%"&gt;(1,399)&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:9pt;font-weight:400;line-height:100%"&gt;2.75&#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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;6,657&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(906)&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:9pt;font-weight:400;line-height:100%"&gt;2.17&#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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2018&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:9pt;font-weight:400;line-height:100%"&gt;4,352&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3.52&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;2,112&#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:9pt;font-weight:400;line-height:100%"&gt;11.50&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;font-weight:400;line-height:100%"&gt;(1,707)&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:9pt;font-weight:400;line-height:100%"&gt;3.87&#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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;27,156&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(494)&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:9pt;font-weight:400;line-height:100%"&gt;4.81&#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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2019&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:9pt;font-weight:400;line-height:100%"&gt;4,263&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7.19&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;1,550&#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:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;55.66&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;font-weight:400;line-height:100%"&gt;(2,085)&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:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7.26&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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;125,578&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(140)&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:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19.47&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;/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:9pt;font-weight:400;line-height:100%"&gt;Outstanding 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:9pt;font-weight:400;line-height:100%"&gt;3,588&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;27.61&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;629,633&#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:9pt;font-weight:400;line-height:100%"&gt;Expected to vest at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;3,588&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;27.61&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.08&lt;/span&gt;&lt;/td&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;629,633&#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;/table&gt;&lt;/div&gt;&lt;div style="text-align:center;text-indent:27pt"&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:8.458%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:89.342%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;padding-left:27pt;text-align:justify;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&#160;&#160;&#160;&#160;The intrinsic value of RSUs vested is based upon the value of the Company&#x2019;s stock when vested. The intrinsic value of RSUs outstanding and expected to vest as of December&#160;31, 2020 is based on the closing price of the last trading day during the period ended December&#160;31, 2020. The Company&#x2019;s stock fair value used in this computation was $175.47&#160;per share.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Performance Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a summary of PSU activity.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&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:45.752%"/&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.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.641%"/&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:8pt;font-weight:700;line-height:100%"&gt;Number of&lt;br/&gt;Shares&lt;br/&gt;Outstanding&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Fair Value&lt;br/&gt;per Share at&lt;br/&gt;Grant Date&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Term&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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:700;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(Years)&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2017&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:9pt;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="3" style="background-color:#cceeff;padding:0 1pt"&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;/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:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;1,477&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4.65&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;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="3" style="background-color:#cceeff;padding:0 1pt"&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&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:9pt;font-weight:400;line-height:100%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(147)&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&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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2018&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:9pt;font-weight:400;line-height:100%"&gt;1,330&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4.66&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;1,052&#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:9pt;font-weight:400;line-height:100%"&gt;9.48&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;font-weight:400;line-height:100%"&gt;(1,063)&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:9pt;font-weight:400;line-height:100%"&gt;4.62&#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="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:9pt;font-weight:400;line-height:100%"&gt;10,818&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(364)&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:9pt;font-weight:400;line-height:100%"&gt;5.16&#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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2019&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:9pt;font-weight:400;line-height:100%"&gt;955&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9.83&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;989&#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:9pt;font-weight:400;line-height:100%"&gt;31.12&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;font-weight:400;line-height:100%"&gt;(1,450)&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:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10.20&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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;52,144&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canceled&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:9pt;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 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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;494&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;51.10&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.2&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;86,668&#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="text-align:center"&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:8.458%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:89.342%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;padding-left:27pt;text-align:justify;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&#160;&#160;&#160;&#160;The intrinsic value of PSUs vested is based upon the value of the Company&#x2019;s stock when vested. The intrinsic value of PSUs outstanding and expected to vest as of December&#160;31, 2020 is based on the closing price of the last trading day during the period ended December&#160;31, 2020. The Company&#x2019;s stock fair value used in this computation was $175.47&#160;per share.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Employee Stock Purchase Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of ESPP activity for the years presented is as follows: (in thousands, except per share data):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:59.280%"/&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.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.622%"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2019&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:8pt;font-weight:700;line-height:100%"&gt;2018&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:9pt;font-weight:400;line-height:100%"&gt;Proceeds from common stock issued under ESPP&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,304&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,692&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;397&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares of common stock issued&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:9pt;font-weight:400;line-height:100%"&gt;347&#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:9pt;font-weight:400;line-height:100%"&gt;315&#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:9pt;font-weight:400;line-height:100%"&gt;439&#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:9pt;font-weight:400;line-height:100%"&gt;Weighted-average price per share&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;12.41&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5.37&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.90&#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;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ie0d53de33c254bcf9936847cfbe36f06_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzQ5NDc4MDIzMjkyNzQ_3c022be2-30df-456e-967e-157a08cda923">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="ie0d53de33c254bcf9936847cfbe36f06_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzIwMw_ad321dbe-c63f-4ab1-877b-46c44e62c8b2">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i8e00d123ad7e4ae38496d42e2e9b688d_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzIzOA_23f125a0-4ee3-4e5c-beca-1394804ad3e9"
      unitRef="shares">100000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i08b3a42a6d2e42df90a482f2e7950222_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzQzNw_ab872e88-4ca9-4ade-a5dd-1cef0ebf4ad4"
      unitRef="shares">2643171</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="i90872b97c68345a7a731ed7a882dc816_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzgxMQ_67d54203-dcfb-4a18-91d8-6e72e7f925d2">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="ia7e2e9768e8e4f1ea8d787a340141acd_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0Xzg4Mw_a8548b9f-8171-4860-9bc4-f0d400b0e109">P7Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ie4473c48845847a69bd0c5658aeea0f5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzQ5NDc4MDIzMjkyNzA_92f51993-c108-4abc-bc0f-6ff4fdd405ab">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <enph:IncreaseInCommonStockSharesReservedForFutureIssuancePercentage
      contextRef="ie4473c48845847a69bd0c5658aeea0f5_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzExNjc_0f9de9b9-1c7a-441f-ba41-2bf01f700a21"
      unitRef="number">0.045</enph:IncreaseInCommonStockSharesReservedForFutureIssuancePercentage>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i08b3a42a6d2e42df90a482f2e7950222_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzEzODg_5977b23e-2202-4f71-9902-4592fd658751"
      unitRef="shares">8940388</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized
      contextRef="ie4473c48845847a69bd0c5658aeea0f5_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzE1Njk_751e0d8d-f6d4-4858-868f-8fb6d0f4dc64"
      unitRef="shares">5803296</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="ifa5b4b4dcf0b485685de1e590a4bda3e_I20120329"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzE4MTY_ee6f9edc-1339-4309-8159-d74ef4ba31e3"
      unitRef="shares">669603</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardEvergreenShares
      contextRef="if6862187987f4618b894a50ae30377ab_D20120329-20120329"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzIwMzI_3ad76641-65fc-4ffd-95f4-a20b767ed3f3"
      unitRef="shares">330396</enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardEvergreenShares>
    <enph:SharebasedCompensationArrangementbySharebasedPaymentAwardIncreaseinNumberofSharesAuthorizedRatio
      contextRef="if6862187987f4618b894a50ae30377ab_D20120329-20120329"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzIwODA_31abb20a-03b8-4d5a-a48a-8d840b87292b"
      unitRef="number">0.010</enph:SharebasedCompensationArrangementbySharebasedPaymentAwardIncreaseinNumberofSharesAuthorizedRatio>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized
      contextRef="i112f95663a9346dc99e31f7aee7b4ecc_D20170518-20170518"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzI0NTg_0969a1ae-c92f-4ca8-aa75-3cced48cb0d2"
      unitRef="shares">400000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized>
    <enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardEvergreenShares
      contextRef="if6862187987f4618b894a50ae30377ab_D20120329-20120329"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzI1NTk_3ad76641-65fc-4ffd-95f4-a20b767ed3f3"
      unitRef="shares">330396</enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardEvergreenShares>
    <enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardEvergreenShares
      contextRef="i112f95663a9346dc99e31f7aee7b4ecc_D20170518-20170518"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzI1NjU_bc13dd9f-8b8e-4ee7-9c3e-47376c92fa47"
      unitRef="shares">700000</enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardEvergreenShares>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="ia0d6acc0230d4f6c86dae813b8d7dca0_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzI2MTI_cc93db7c-3fc7-4fef-8dae-52ac9ba95c66"
      unitRef="shares">1288887</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardEvergreenShares
      contextRef="i412350457f9f4580bf84f73751717aa3_D20210101-20210101"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzI3Njc_6ae331d0-9a71-45cf-bf9f-cba9516bc889"
      unitRef="shares">700000</enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardEvergreenShares>
    <enph:EmployeeStockPurchasePlanNumberOfInterimPurchasePeriods
      contextRef="i96ab66ca4bbb4bba8092575c0b305399_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzI4NzQ_5f1615e0-9dc3-4e86-82a8-edb41d2c0f21"
      unitRef="purchaseperiod">4</enph:EmployeeStockPurchasePlanNumberOfInterimPurchasePeriods>
    <enph:GeneralDurationOfEmployeeStockPurchasePlan
      contextRef="i96ab66ca4bbb4bba8092575c0b305399_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzQ5NDc4MDIzMjkyNzE_8e1239d9-86a0-49ea-a914-29d975f95f40">P24M</enph:GeneralDurationOfEmployeeStockPurchasePlan>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate
      contextRef="ia0d6acc0230d4f6c86dae813b8d7dca0_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzMyNTQ_ec2e2168-75f1-4b1c-ad89-b6189c1bb882"
      unitRef="number">0.15</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent
      contextRef="i96ab66ca4bbb4bba8092575c0b305399_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzMzNzk_5a05e3a8-9bad-4121-873b-19269dee63d8"
      unitRef="number">0.85</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent>
    <enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardLookBackFeaturePeriod
      contextRef="i96ab66ca4bbb4bba8092575c0b305399_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzQ5NDc4MDIzMjkyNzI_96b64a15-a2cd-4a2e-83b9-163eb678f065">P2Y</enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardLookBackFeaturePeriod>
    <enph:GeneralDurationOfEmployeeStockPurchasePlan
      contextRef="i96ab66ca4bbb4bba8092575c0b305399_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzQ5NDc4MDIzMjkyNzM_68228351-f817-4c87-a30f-bfac8a2da19d">P24M</enph:GeneralDurationOfEmployeeStockPurchasePlan>
    <enph:IrsLimitationForEmployeesRightToAcquireClassCommonStockUnderEspp
      contextRef="i96ab66ca4bbb4bba8092575c0b305399_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMTcvZnJhZzo2NjM5ZWJjNWUwZGY0MWExYWYxZjVkNWFhYTcyNjk5NC90ZXh0cmVnaW9uOjY2MzllYmM1ZTBkZjQxYTFhZjFmNWQ1YWFhNzI2OTk0XzQwNDc_369e493b-8194-45a0-8724-28f365aeec98"
      unitRef="usd">25000</enph:IrsLimitationForEmployeesRightToAcquireClassCommonStockUnderEspp>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90ZXh0cmVnaW9uOjg0ZWE0ZjI0MmZiYzQ5ZDM5Njg3OWI4MTUzMzVjNmI0XzIxNjE_d214661c-c93c-4b26-b4d9-d316d8c25d4e">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the weighted-average grant date fair value of options granted for the periods presented and the assumptions used to estimate those values using a Black-Scholes option pricing model.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&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:59.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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.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.330%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2019&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:8pt;font-weight:700;line-height:100%"&gt;2018&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average grant date fair value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;38.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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9.16&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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.83&lt;/span&gt;&lt;/td&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Expected term (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.8&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.8&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4.0&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Expected volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;86.4%&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;89.1%&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;88.5%&lt;/span&gt;&lt;/td&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Annual risk-free rate of return&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.1%&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.1%&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.6%&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;%&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;%&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:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i8e15eea4fe344490ab3274493150beed_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzItNS0xLTEtMA_530ac0d1-d14f-41f0-8c74-28db261f126d"
      unitRef="usdPerShare">38.45</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i83e4fe42f2ee48f9a9e9f061524506a0_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzItNy0xLTEtMA_2314cd47-0fae-4999-92c5-35a67022b4eb"
      unitRef="usdPerShare">9.16</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i3c6558ac3b6a4e40a55d43c8fc3a1235_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzItOS0xLTEtMA_86988f57-2ebc-4523-930f-847517cdbe09"
      unitRef="usdPerShare">2.83</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i8e15eea4fe344490ab3274493150beed_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzMtNS0xLTEtMA_c2e5e246-951c-46f8-a217-f4c7ad1022aa">P3Y9M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i83e4fe42f2ee48f9a9e9f061524506a0_D20190101-20191231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzMtNy0xLTEtMA_57eaace6-f848-4d32-9531-cde43840a82e">P3Y9M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i3c6558ac3b6a4e40a55d43c8fc3a1235_D20180101-20181231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzMtOS0xLTEtMA_6acf309d-c5d5-431a-807a-685a49f4d256">P4Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i8e15eea4fe344490ab3274493150beed_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzQtNS0xLTEtMA_68dab728-21e9-4df7-a78a-c2955b602f45"
      unitRef="number">0.864</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i83e4fe42f2ee48f9a9e9f061524506a0_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzQtNy0xLTEtMA_597d1a7b-71ea-4e1c-af69-8411003e9e15"
      unitRef="number">0.891</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i3c6558ac3b6a4e40a55d43c8fc3a1235_D20180101-20181231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzQtOS0xLTEtMA_163e651d-2916-4c1a-a365-0bea3b48ae90"
      unitRef="number">0.885</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i8e15eea4fe344490ab3274493150beed_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzUtNS0xLTEtMA_51b0f267-25fc-4b3d-8d8f-286bb2dd6359"
      unitRef="number">0.001</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i83e4fe42f2ee48f9a9e9f061524506a0_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzUtNy0xLTEtMA_3f64c6e0-074f-4013-b438-b102fc36b73e"
      unitRef="number">0.021</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i3c6558ac3b6a4e40a55d43c8fc3a1235_D20180101-20181231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzUtOS0xLTEtMA_ed476c60-0be1-4205-8956-0b26679ca60b"
      unitRef="number">0.026</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i8e15eea4fe344490ab3274493150beed_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzYtNS0xLTEtMA_93c3d642-417e-4d0a-a295-bb5fd1911fe3"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i83e4fe42f2ee48f9a9e9f061524506a0_D20190101-20191231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzYtNy0xLTEtMA_8ddde2c8-2693-426c-b121-6c53a384ef48"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i3c6558ac3b6a4e40a55d43c8fc3a1235_D20180101-20181231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjkvZnJhZzo4NGVhNGYyNDJmYmM0OWQzOTY4NzliODE1MzM1YzZiNC90YWJsZTo4MDgyNDU5OTJhOTA0YWUyYTM4OGJiZDFkNTcxMjY0Yy90YWJsZXJhbmdlOjgwODI0NTk5MmE5MDRhZTJhMzg4YmJkMWQ1NzEyNjRjXzYtOS0xLTEtMA_6083ace0-ecdf-4564-b468-5f587074caf3"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90ZXh0cmVnaW9uOjJmNmQ0NzliZDdmYzQwZGQ4NmY0MjA1NjU0MjdkZmY0XzcxMg_e43acfd1-82c0-4525-8b8d-3fbc4e03f15b">The following table summarizes the components of total stock-based compensation expense included in the consolidated statements of operations for the periods presented.&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:55.332%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.935%"/&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.938%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,759&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,650&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,071&#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 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;12,701&#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:9pt;font-weight:400;line-height:100%"&gt;4,897&#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:9pt;font-weight:400;line-height:100%"&gt;2,940&#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 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;11,548&#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:9pt;font-weight:400;line-height:100%"&gt;5,678&#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:9pt;font-weight:400;line-height:100%"&gt;3,074&#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 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;14,495&#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:9pt;font-weight:400;line-height:100%"&gt;7,216&#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:9pt;font-weight:400;line-height:100%"&gt;4,347&#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 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Restructuring&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;735&#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:9pt;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;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;42,503&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;20,176&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;11,432&#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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income tax benefit included in the provision for incomes taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;61,389&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;8,185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i0bf8e97619f941b69faeae011661cac4_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzMtNS0xLTEtMA_a866f059-a380-4d2f-bcbb-c221322ed886"
      unitRef="usd">3759000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i1eee491d9f9741d0b1a90d8f7c5480c0_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzMtNy0xLTEtMA_e20f3d01-3c98-49b3-8efa-ff1c3c4094b2"
      unitRef="usd">1650000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ib8fe9cfce28b440da3977d2bdb38c882_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzMtOS0xLTEtMA_27500135-c3aa-4b23-bc9e-e5426eaab46f"
      unitRef="usd">1071000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i013a8098ef2d415eb2daab51a0512783_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzQtNS0xLTEtMA_37e92600-bbbc-4fd3-a9f0-e8bf89cc75d5"
      unitRef="usd">12701000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i2eff03af1d4d42ad90740890ab0cb6bd_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzQtNy0xLTEtMA_b851d449-78e0-4667-8035-d2da8bb6ce76"
      unitRef="usd">4897000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i0d6288fa11bb4a1480f7d57b9d7ae012_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzQtOS0xLTEtMA_f9ac0009-248d-4d9c-92c3-361a1578cc80"
      unitRef="usd">2940000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ib182d4367f554601afa6afaf93b6ec96_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzUtNS0xLTEtMA_38a56733-9f7b-4743-b4be-db6d8c6fffe2"
      unitRef="usd">11548000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i6849c345b4e24236b75b2a90113ecc9c_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzUtNy0xLTEtMA_208aa3c2-15bd-460b-8aeb-16a20bf56718"
      unitRef="usd">5678000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i18dfa5446128428e8a763b17d8360c0c_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzUtOS0xLTEtMA_5de57126-1d86-4add-b190-39be72f89874"
      unitRef="usd">3074000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i1609a775e8c84a108691acad3e2f153c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzYtNS0xLTEtMA_1f1aecb7-1688-4c6b-b7f2-7e02af5e1357"
      unitRef="usd">14495000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i825d43b6eaf247e7ac0b65a5d4e3a88f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzYtNy0xLTEtMA_9deb423c-0800-45b0-9150-dbd15b54361e"
      unitRef="usd">7216000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ib550d78d59004cbfb4ea5916d5051e16_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzYtOS0xLTEtMA_5733e589-d925-4d66-87c7-a17aaaf53999"
      unitRef="usd">4347000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ic6d60aeffbc74041854c6cc3064c16c6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzctNS0xLTEtMA_261ec56a-23e1-4dbe-86f2-cb96e23c2f6b"
      unitRef="usd">0</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ib032172376984e3985d7705ddd213e7d_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzctNy0xLTEtMA_5908f1b6-2d1d-44a0-9e4e-572110542cf0"
      unitRef="usd">735000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i5f773c24754f4da3b0c384c526d2c369_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzctOS0xLTEtMA_66c06319-109c-4f44-8ef0-02f0e4891119"
      unitRef="usd">0</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzgtNS0xLTEtMA_2b0fbcc2-04c7-4f66-bca9-112255f0f82f"
      unitRef="usd">42503000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzgtNy0xLTEtMA_d19f8f07-a96c-44be-8743-fa5a0d600c15"
      unitRef="usd">20176000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzgtOS0xLTEtMA_972d4f8a-221b-4299-862f-853d987a5abb"
      unitRef="usd">11432000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzktNS0xLTEtOTAwOQ_ca5237c9-fc2f-4376-a1ab-5e32112a0b60"
      unitRef="usd">61389000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzktNy0xLTEtOTAwOQ_daf96c5b-f52c-4fc4-ab61-2eca19493691"
      unitRef="usd">8185000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo1YzQ2NTZkMGQ1MDI0NzViYWQwNGYxODI0ODVjMDgwNS90YWJsZXJhbmdlOjVjNDY1NmQwZDUwMjQ3NWJhZDA0ZjE4MjQ4NWMwODA1XzktOS0xLTEtOTAwOQ_5a875b86-3f8a-426a-a0b6-e071f845c489"
      unitRef="usd">0</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90ZXh0cmVnaW9uOjJmNmQ0NzliZDdmYzQwZGQ4NmY0MjA1NjU0MjdkZmY0XzcxMw_a7e63dcd-c764-4d86-b8a8-029a553d90d6">&lt;div style="margin-top:6pt;text-indent:27pt"&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 the various types of stock-based compensation expense for the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:55.332%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.935%"/&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.938%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Stock options, RSUs, and PSUs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;39,841&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19,216&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;10,691&#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 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Employee stock purchase plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;2,662&#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:9pt;font-weight:400;line-height:100%"&gt;960&#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:9pt;font-weight:400;line-height:100%"&gt;741&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;42,503&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;20,176&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;11,432&#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:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i1a203c99c5d442faac03197fa15c46a6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo4OTg2NzYxMDAxYzQ0NmI4OGY1MDlkNzAzYzRmMzlhOC90YWJsZXJhbmdlOjg5ODY3NjEwMDFjNDQ2Yjg4ZjUwOWQ3MDNjNGYzOWE4XzMtNS0xLTEtMA_a778e088-2ee2-4215-8551-1d9375cda075"
      unitRef="usd">39841000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ice1a25c310014c458469219a77cd6bdf_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo4OTg2NzYxMDAxYzQ0NmI4OGY1MDlkNzAzYzRmMzlhOC90YWJsZXJhbmdlOjg5ODY3NjEwMDFjNDQ2Yjg4ZjUwOWQ3MDNjNGYzOWE4XzMtNy0xLTEtMA_d2da53d1-d103-4d55-9068-17aa50a67dab"
      unitRef="usd">19216000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i1c6eeab6665b48428eeca75cc47a7618_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo4OTg2NzYxMDAxYzQ0NmI4OGY1MDlkNzAzYzRmMzlhOC90YWJsZXJhbmdlOjg5ODY3NjEwMDFjNDQ2Yjg4ZjUwOWQ3MDNjNGYzOWE4XzMtOS0xLTEtMA_0b37c589-8ace-42a4-ba37-5e157608a040"
      unitRef="usd">10691000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="id2cd5455258944ada362e2c03763d7b7_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo4OTg2NzYxMDAxYzQ0NmI4OGY1MDlkNzAzYzRmMzlhOC90YWJsZXJhbmdlOjg5ODY3NjEwMDFjNDQ2Yjg4ZjUwOWQ3MDNjNGYzOWE4XzQtNS0xLTEtMA_dbf00dbf-f73d-40ac-a494-c74d3cf330fd"
      unitRef="usd">2662000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i139658f27e7b4443b98c44f5b0276783_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo4OTg2NzYxMDAxYzQ0NmI4OGY1MDlkNzAzYzRmMzlhOC90YWJsZXJhbmdlOjg5ODY3NjEwMDFjNDQ2Yjg4ZjUwOWQ3MDNjNGYzOWE4XzQtNy0xLTEtMA_ddd343fa-5b2d-4205-8b29-09ea59947543"
      unitRef="usd">960000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i5b1f5df70b3340e6991b2eaad699319b_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo4OTg2NzYxMDAxYzQ0NmI4OGY1MDlkNzAzYzRmMzlhOC90YWJsZXJhbmdlOjg5ODY3NjEwMDFjNDQ2Yjg4ZjUwOWQ3MDNjNGYzOWE4XzQtOS0xLTEtMA_9936ccfc-bf43-4a4f-a8fe-3b55786c454f"
      unitRef="usd">741000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo4OTg2NzYxMDAxYzQ0NmI4OGY1MDlkNzAzYzRmMzlhOC90YWJsZXJhbmdlOjg5ODY3NjEwMDFjNDQ2Yjg4ZjUwOWQ3MDNjNGYzOWE4XzYtNS0xLTEtMA_44dc1929-e11e-47a7-ad8f-768df1d2c198"
      unitRef="usd">42503000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo4OTg2NzYxMDAxYzQ0NmI4OGY1MDlkNzAzYzRmMzlhOC90YWJsZXJhbmdlOjg5ODY3NjEwMDFjNDQ2Yjg4ZjUwOWQ3MDNjNGYzOWE4XzYtNy0xLTEtMA_ce648e54-c27f-496c-aac7-214641d102aa"
      unitRef="usd">20176000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90YWJsZTo4OTg2NzYxMDAxYzQ0NmI4OGY1MDlkNzAzYzRmMzlhOC90YWJsZXJhbmdlOjg5ODY3NjEwMDFjNDQ2Yjg4ZjUwOWQ3MDNjNGYzOWE4XzYtOS0xLTEtMA_519932c1-6789-4ed9-bf7b-d3683e34dc01"
      unitRef="usd">11432000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90ZXh0cmVnaW9uOjJmNmQ0NzliZDdmYzQwZGQ4NmY0MjA1NjU0MjdkZmY0XzU0MA_3196b252-e41f-4e9c-995e-c19422a83640"
      unitRef="usd">89700000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yMjYvZnJhZzoyZjZkNDc5YmQ3ZmM0MGRkODZmNDIwNTY1NDI3ZGZmNC90ZXh0cmVnaW9uOjJmNmQ0NzliZDdmYzQwZGQ4NmY0MjA1NjU0MjdkZmY0XzcwMw_93e4a8c3-fa08-4dee-b453-04741b447898">P2Y10M24D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90ZXh0cmVnaW9uOjcxNjlhZDI4Yjc0YzQzN2Q4YWE2NTc2NTAzZTFjZWViXzQ1OQ_2e7c0aa4-7079-4c15-8b76-6360a560c117">&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a summary of stock option activity.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&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:45.752%"/&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.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.641%"/&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:8pt;font-weight:700;line-height:100%"&gt;Number of&lt;br/&gt;Shares&lt;br/&gt;Outstanding&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Exercise&#160;Price&lt;br/&gt;per Share&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Term&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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:700;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(Years)&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:120%"&gt;Outstanding at December 31, 2017&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:9pt;font-weight:400;line-height:100%"&gt;8,426&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.77&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;213&#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:9pt;font-weight:400;line-height:100%"&gt;4.43&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;(1,346)&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:9pt;font-weight:400;line-height:100%"&gt;1.75&#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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5,096&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(521)&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:9pt;font-weight:400;line-height:100%"&gt;2.94&#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:9pt;font-weight:400;line-height:120%"&gt;Outstanding at December 31, 2018&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:9pt;font-weight:400;line-height:100%"&gt;6,772&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.76&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;43&#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:9pt;font-weight:400;line-height:100%"&gt;14.58&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;(2,616)&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:9pt;font-weight:400;line-height:100%"&gt;1.22&#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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;31,093&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(102)&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:9pt;font-weight:400;line-height:100%"&gt;4.07&#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:9pt;font-weight:400;line-height:120%"&gt;Outstanding at December 31, 2019&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:9pt;font-weight:400;line-height:100%"&gt;4,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;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.18&#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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;11&#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:9pt;font-weight:400;line-height:100%"&gt;64.17&#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 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;(1,494)&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:9pt;font-weight:400;line-height:100%"&gt;2.74&#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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;114,089&#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:9pt;font-weight:400;line-height:120%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(82)&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:9pt;font-weight:400;line-height:100%"&gt;6.94&#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:9pt;font-weight:400;line-height:120%"&gt;Outstanding 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:9pt;font-weight:400;line-height:100%"&gt;2,532&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.96&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.7&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;439,268&#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:9pt;font-weight:400;line-height:120%"&gt;Vested and expected to vest at December 31, 2020&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:9pt;font-weight:400;line-height:100%"&gt;2,532&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.96&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.7&lt;/span&gt;&lt;/td&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;439,268&#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:9pt;font-weight:400;line-height:120%"&gt;Exercisable at December 31, 2020&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:9pt;font-weight:400;line-height:100%"&gt;2,089&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.95&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.7&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;362,526&#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;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:8.724%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:89.076%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;padding-left:27pt;text-align:justify;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&#160;&#160;&#160;&#160;The intrinsic value of options exercised is based upon the value of the Company&#x2019;s stock at exercise. The intrinsic value of options outstanding, vested and expected to vest, and exercisable as of December&#160;31, 2020 is based on the closing price of the last trading day during the period ended December&#160;31, 2020. The Company&#x2019;s stock fair value used in this computation was $175.47&#160;per share.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i313ff8cf793547cfaaab91c7ecbea720_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzItMS0xLTEtMA_dd64408b-b474-4a00-9d09-91de912e1794"
      unitRef="shares">8426000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i313ff8cf793547cfaaab91c7ecbea720_I20171231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzItMy0xLTEtMA_1eba42f2-b73c-46c4-8c8f-99f1abaf0363"
      unitRef="usdPerShare">1.77</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzMtMS0xLTEtMA_d55ab26c-1143-4746-98e1-064843ebcea4"
      unitRef="shares">213000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzMtMy0xLTEtMA_3453c2e3-3140-441a-8721-7d0360e678de"
      unitRef="usdPerShare">4.43</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzQtMS0xLTEtMA_6804a904-48a4-4789-aad9-8a68c056c459"
      unitRef="shares">1346000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzQtMy0xLTEtMA_f1c895d1-7975-44dd-85a6-09b812647456"
      unitRef="usdPerShare">1.75</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzQtNy0xLTEtMA_d2e2f39d-ea3c-4319-96b8-4aa43f7d3ca9"
      unitRef="usd">5096000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzUtMS0xLTEtMA_a69b60fe-f2a8-486b-8d8f-822440ffa5d6"
      unitRef="shares">521000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzUtMy0xLTEtMA_ac6048e1-bd8f-4643-ba02-78676e53774b"
      unitRef="usdPerShare">2.94</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzYtMS0xLTEtMA_c3c27ce7-80af-460b-8f50-f9655c76f7cc"
      unitRef="shares">6772000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzYtMy0xLTEtMA_43700aeb-9ba2-4f85-9178-d0ce70be38e4"
      unitRef="usdPerShare">1.76</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzctMS0xLTEtMA_8cfa23a1-1510-4d14-9719-c506038d93a9"
      unitRef="shares">43000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzctMy0xLTEtMA_ad301985-6617-4f65-bd87-7c3da107dcc5"
      unitRef="usdPerShare">14.58</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzgtMS0xLTEtMA_9f135cd4-40e0-4fa7-b2ea-96bb30d2a355"
      unitRef="shares">2616000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzgtMy0xLTEtMA_d3d21aa6-bfc7-4e55-9b81-f175e4a690ee"
      unitRef="usdPerShare">1.22</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzgtNy0xLTEtMA_34a91753-bf04-4ef8-9f68-2a913619da4a"
      unitRef="usd">31093000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzktMS0xLTEtMA_b8dacddd-4410-4755-9a42-f1e0f212b059"
      unitRef="shares">102000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzktMy0xLTEtMA_9863c08c-8a94-4b00-b218-5bb3ca15fd25"
      unitRef="usdPerShare">4.07</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzEwLTEtMS0xLTA_73476d9e-334f-4da7-beb7-5b1b8514d08f"
      unitRef="shares">4097000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzEwLTMtMS0xLTA_c2d52d84-9065-4ec8-acf3-c73d4381d781"
      unitRef="usdPerShare">2.18</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzExLTEtMS0xLTA_81ca34e5-c73b-474e-8cb7-39607ea98413"
      unitRef="shares">11000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzExLTMtMS0xLTA_e6ebf3f6-44e6-404a-881e-44e96a4d037e"
      unitRef="usdPerShare">64.17</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzEyLTEtMS0xLTA_f95c4940-76b4-45fc-9e18-dd54a9160e2d"
      unitRef="shares">1494000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzEyLTMtMS0xLTA_973a8f45-49ef-48ed-9d9e-d0d5ffc79eaf"
      unitRef="usdPerShare">2.74</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzEyLTctMS0xLTA_56ca0ea2-030d-4043-8d55-2e49955c3d4f"
      unitRef="usd">114089000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzEzLTEtMS0xLTA_8f35ba4b-80f2-4c78-8a18-186395ad1c47"
      unitRef="shares">82000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzEzLTMtMS0xLTA_e0111743-5bac-41e7-bfc6-90f650697b2c"
      unitRef="usdPerShare">6.94</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzE0LTEtMS0xLTA_bfd3e6f0-5471-44a2-83c7-d1db8d3ac02e"
      unitRef="shares">2532000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzE0LTMtMS0xLTA_d0dff233-0563-4690-bd65-605c2f680084"
      unitRef="usdPerShare">1.96</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzE0LTUtMS0xLTA_ef264d70-13ed-4d10-9312-7d3f4bd29ef1">P3Y8M12D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzE0LTctMS0xLTA_9bd50fb2-3662-4bde-9f06-d2c9400fedc2"
      unitRef="usd">439268000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzE1LTEtMS0xLTA_1c1ae45f-bd5b-4efe-bc9c-61d9e19fffb4"
      unitRef="shares">2532000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzE1LTMtMS0xLTA_128b2a1c-f0cc-41d6-8b7b-4bc4f4babd93"
      unitRef="usdPerShare">1.96</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzE1LTUtMS0xLTA_55355621-f333-4036-8387-a42205b63e76">P3Y8M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzE1LTctMS0xLTA_0b9cbaad-8690-4989-b866-d964a5ec42ef"
      unitRef="usd">439268000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzE2LTEtMS0xLTA_fe990918-4c69-45fc-835d-ae2f9900e2ba"
      unitRef="shares">2089000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzE2LTMtMS0xLTA_0054e91d-2ccb-448f-aa4c-48e14af75603"
      unitRef="usdPerShare">1.95</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzE2LTUtMS0xLTA_fe25bf72-3e9e-44f7-898f-5773aa9171d9">P3Y8M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90YWJsZTpiNGQ0NGU2NTBmZjI0MWNhYTJkYjg2NjQ2ODk0OTRhMC90YWJsZXJhbmdlOmI0ZDQ0ZTY1MGZmMjQxY2FhMmRiODY2NDY4OTQ5NGEwXzE2LTctMS0xLTA_43548b2c-43ed-4fd1-aee1-8be5b6646f4c"
      unitRef="usd">362526000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:SharePrice
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDEvZnJhZzo3MTY5YWQyOGI3NGM0MzdkOGFhNjU3NjUwM2UxY2VlYi90ZXh0cmVnaW9uOjcxNjlhZDI4Yjc0YzQzN2Q4YWE2NTc2NTAzZTFjZWViXzQ0Mw_02d025c4-5b67-4269-8d18-0af81e20311c"
      unitRef="usdPerShare">175.47</us-gaap:SharePrice>
    <us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90ZXh0cmVnaW9uOjk3NWIxYWE5ODI0OTRjODY5ZTYwOTkxMTNlODllNDcwXzg5_7d1e0b61-491c-480d-8455-1cef853a4598">&lt;div style="margin-top:6pt;text-indent:27pt"&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 information about stock options outstanding at December&#160;31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:31.550%"/&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.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.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.642%"/&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:0 1pt"/&gt;&lt;td colspan="15" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Options Outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Options Exercisable&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:8pt;font-weight:700;line-height:100%"&gt;Range of Exercise Prices&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:8pt;font-weight:700;line-height:100%"&gt;Number of&lt;br/&gt;Shares&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Life&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:8pt;font-weight:700;line-height:100%"&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="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:8pt;font-weight:700;line-height:100%"&gt;Number of&lt;br/&gt;Shares&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(Years)&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:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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: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;div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$0.70 &#x2014;&#x2013; $1.11&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;555&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4.2&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.85&#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:9pt;font-weight:400;line-height:100%"&gt;448&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.83&#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;div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$1.29 &#x2014;&#x2013; $1.29&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;1,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 colspan="3" style="background-color:#ffffff;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:400;line-height:100%"&gt;3.7&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;1.29&#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:9pt;font-weight:400;line-height:100%"&gt;813&#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:9pt;font-weight:400;line-height:100%"&gt;1.29&#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;div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$1.31 &#x2014;&#x2013; $1.31&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;670&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.3&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;1.31&#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:9pt;font-weight:400;line-height:100%"&gt;587&#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:9pt;font-weight:400;line-height:100%"&gt;1.31&#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;div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$1.37 &#x2014;&#x2013; $14.58&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;296&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.6&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;5.56&#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:9pt;font-weight:400;line-height:100%"&gt;235&#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:9pt;font-weight:400;line-height:100%"&gt;6.37&#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;div style="padding-left:5.62pt;padding-right:5.62pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$64.17 &#x2014;&#x2013; $64.17&lt;/span&gt;&lt;/div&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;11&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6.3&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;64.17&#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:9pt;font-weight:400;line-height:100%"&gt;6&#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:9pt;font-weight:400;line-height:100%"&gt;64.17&#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 19pt;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;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;2,532&#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 colspan="3" style="background-color:#ffffff;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:400;line-height:100%"&gt;3.7&lt;/span&gt;&lt;/td&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.96&#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;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:9pt;font-weight:400;line-height:100%"&gt;2,089&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.95&#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;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="i2ad2654cbed74bcab65bd3f15d5faa60_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzMtMC0xLTEtMC90ZXh0cmVnaW9uOmU3MGI4NzEzYzEzYTRmNDViNDBkMTY0M2EzN2ZhMTdhXzg3OTYwOTMwMjIyMzE_fe73255a-d994-4b47-95fa-2c6262fbe7b8"
      unitRef="usdPerShare">0.70</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="i2ad2654cbed74bcab65bd3f15d5faa60_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzMtMC0xLTEtMC90ZXh0cmVnaW9uOmU3MGI4NzEzYzEzYTRmNDViNDBkMTY0M2EzN2ZhMTdhXzg3OTYwOTMwMjIyMzk_ca266db8-60cd-4ca8-b3da-a1c266e5601a"
      unitRef="usdPerShare">1.11</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="if782fe0b208d4388a09a184362c97c18_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzMtMi0xLTEtMA_07782835-6c94-495b-93f8-5d3db624faa3"
      unitRef="shares">555000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="i2ad2654cbed74bcab65bd3f15d5faa60_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzMtNC0xLTEtMA_e811e618-b7a1-438b-92ad-a8aa2b59473e">P4Y2M12D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="if782fe0b208d4388a09a184362c97c18_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzMtNi0xLTEtMA_379bf284-71e9-4791-b299-ed789d42f58d"
      unitRef="usdPerShare">0.85</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="if782fe0b208d4388a09a184362c97c18_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzMtOC0xLTEtMA_d1d46de8-badb-4a70-a14b-3c62045ca035"
      unitRef="shares">448000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="if782fe0b208d4388a09a184362c97c18_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzMtMTAtMS0xLTA_4a9cb6c6-c1fb-4c68-aaec-25d1a7aa809a"
      unitRef="usdPerShare">0.83</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="i90ab4e3e0ce74eb2997b5128a0ce0824_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzQtMC0xLTEtMC90ZXh0cmVnaW9uOjdkYWE4MjhiYzczYjQyOWVhMjAxNGI1OWMyYWFhMGY4Xzg3OTYwOTMwMjIyMzI_2bceaf90-485e-47b4-8aa3-59d5db83e697"
      unitRef="usdPerShare">1.29</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="i90ab4e3e0ce74eb2997b5128a0ce0824_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzQtMC0xLTEtMC90ZXh0cmVnaW9uOjdkYWE4MjhiYzczYjQyOWVhMjAxNGI1OWMyYWFhMGY4Xzg3OTYwOTMwMjIyNDE_0c271fef-50e9-4851-bc82-27f25741d3a3"
      unitRef="usdPerShare">1.29</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="i507c0c076e4f467cbed0262ea4500251_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzQtMi0xLTEtMA_78843c9f-0ab0-4585-b13b-1c300918173e"
      unitRef="shares">1000000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="i90ab4e3e0ce74eb2997b5128a0ce0824_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzQtNC0xLTEtMA_1fafaa3c-ba4e-409a-af7f-f3e9b612a669">P3Y8M12D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="i507c0c076e4f467cbed0262ea4500251_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzQtNi0xLTEtMA_e24b2060-ac18-4c16-a5eb-5a5715c76de5"
      unitRef="usdPerShare">1.29</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="i507c0c076e4f467cbed0262ea4500251_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzQtOC0xLTEtMA_3d1dfd61-c36a-4f2a-b16a-0630882d9aa7"
      unitRef="shares">813000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="i507c0c076e4f467cbed0262ea4500251_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzQtMTAtMS0xLTA_788330de-011f-463f-8490-159541796ab7"
      unitRef="usdPerShare">1.29</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="i2d826e9b45a94a0f81d9215b9be6551a_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzUtMC0xLTEtMC90ZXh0cmVnaW9uOjJhMDkyMDc2MjJhYTQ4MDJiNTNmOGM2MzMzOTRjZjM4Xzg3OTYwOTMwMjIyMzE_4a36ff4b-0cb9-46c8-807b-0bba2f393e96"
      unitRef="usdPerShare">1.31</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="i2d826e9b45a94a0f81d9215b9be6551a_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzUtMC0xLTEtMC90ZXh0cmVnaW9uOjJhMDkyMDc2MjJhYTQ4MDJiNTNmOGM2MzMzOTRjZjM4Xzg3OTYwOTMwMjIyMzk_948f7791-f9aa-4471-a92d-67d6078046db"
      unitRef="usdPerShare">1.31</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="i6f7e09c1200c4b229b337b0f01e54fce_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzUtMi0xLTEtMA_e3dd2771-fb3b-4a64-a03e-a7dc8271eae1"
      unitRef="shares">670000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="i2d826e9b45a94a0f81d9215b9be6551a_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzUtNC0xLTEtMA_03a1e645-9a8e-4e23-91df-985ab3fa39f5">P3Y3M18D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="i6f7e09c1200c4b229b337b0f01e54fce_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzUtNi0xLTEtMA_2131f71e-1bf5-4a74-bc13-af6fa7d67f75"
      unitRef="usdPerShare">1.31</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="i6f7e09c1200c4b229b337b0f01e54fce_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzUtOC0xLTEtMA_58772d5d-a590-4368-ba9e-41796161663a"
      unitRef="shares">587000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="i6f7e09c1200c4b229b337b0f01e54fce_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzUtMTAtMS0xLTA_058fb1ea-6847-487e-8b35-e2c86c6fe067"
      unitRef="usdPerShare">1.31</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="i5f5afde323984330adc6125967c6bfce_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzYtMC0xLTEtMC90ZXh0cmVnaW9uOmY5YjhhYjVkODJiZDQzNGVhMDkwNjY5Mjc3Y2U1MWQzXzg3OTYwOTMwMjIyMzI_3f6ab85e-0fc0-4eec-8310-db820b7d0980"
      unitRef="usdPerShare">1.37</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="i5f5afde323984330adc6125967c6bfce_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzYtMC0xLTEtMC90ZXh0cmVnaW9uOmY5YjhhYjVkODJiZDQzNGVhMDkwNjY5Mjc3Y2U1MWQzXzg3OTYwOTMwMjIyNDE_0f9b0c76-33ac-4d51-9025-aea6cfac9bf8"
      unitRef="usdPerShare">14.58</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="i7cb5ca22a93d4f49ba6eb7a76e3ef04b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzYtMi0xLTEtMA_7004b557-d062-4636-83b3-00340ff2286b"
      unitRef="shares">296000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="i5f5afde323984330adc6125967c6bfce_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzYtNC0xLTEtMA_6b45195e-4d0c-41c0-a20d-995e3629a82e">P3Y7M6D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="i7cb5ca22a93d4f49ba6eb7a76e3ef04b_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzYtNi0xLTEtMA_591aafca-feb7-4feb-934d-13f106547b15"
      unitRef="usdPerShare">5.56</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="i7cb5ca22a93d4f49ba6eb7a76e3ef04b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzYtOC0xLTEtMA_9e15ed8a-2231-4967-8c2e-885be2554880"
      unitRef="shares">235000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="i7cb5ca22a93d4f49ba6eb7a76e3ef04b_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzYtMTAtMS0xLTA_54217ee2-18f0-4831-82a8-dac04d82cc00"
      unitRef="usdPerShare">6.37</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="i973a1080ec1542e78a3b7f1c678a8175_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzctMC0xLTEtMC90ZXh0cmVnaW9uOjk1ODdjMGE1NGNhYzRlMDk4MDJkZWEzYmNiM2QwNDYzXzg3OTYwOTMwMjIyMzQ_14ad27c1-fe9d-47c3-a1c2-bd6b3cb8af55"
      unitRef="usdPerShare">64.17</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="i973a1080ec1542e78a3b7f1c678a8175_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzctMC0xLTEtMC90ZXh0cmVnaW9uOjk1ODdjMGE1NGNhYzRlMDk4MDJkZWEzYmNiM2QwNDYzXzg3OTYwOTMwMjIyNDM_e2a5c43d-d1a5-4630-87c5-81b753386f67"
      unitRef="usdPerShare">64.17</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="ica464b05467142098eaf65b81ef11620_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzctMi0xLTEtMA_256c91de-3e0c-422f-ac75-78f6a5dede1b"
      unitRef="shares">11000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="i973a1080ec1542e78a3b7f1c678a8175_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzctNC0xLTEtMA_6120bae5-eeff-4fc8-85bb-89ca1a469297">P6Y3M18D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="ica464b05467142098eaf65b81ef11620_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzctNi0xLTEtMA_8e9be5e1-0055-44e5-a8f0-4b6e8aadd64e"
      unitRef="usdPerShare">64.17</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="ica464b05467142098eaf65b81ef11620_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzctOC0xLTEtMA_f02d18cb-1c93-4636-adef-815693c7bf54"
      unitRef="shares">6000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="ica464b05467142098eaf65b81ef11620_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzctMTAtMS0xLTA_de589b85-2b87-4579-9a88-5d1dc0d16c87"
      unitRef="usdPerShare">64.17</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzgtMi0xLTEtMA_50f6e1ad-f990-4354-b428-774676227c6e"
      unitRef="shares">2532000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzgtNC0xLTEtMA_6eab044d-9dc6-411a-9082-f0a1dd0415db">P3Y8M12D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzgtNi0xLTEtMA_bd197f68-7a8f-479e-b363-56817fb2dc4a"
      unitRef="usdPerShare">1.96</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzgtOC0xLTEtMA_631a973a-c909-49eb-8195-d4b5bd1fc860"
      unitRef="shares">2089000</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDQvZnJhZzo5NzViMWFhOTgyNDk0Yzg2OWU2MDk5MTEzZTg5ZTQ3MC90YWJsZTo5MzUwNjZiM2VkYTM0NTI3YmY0NjliMzc0NTI1ZjI0NC90YWJsZXJhbmdlOjkzNTA2NmIzZWRhMzQ1MjdiZjQ2OWIzNzQ1MjVmMjQ0XzgtMTAtMS0xLTA_0054e91d-2ccb-448f-aa4c-48e14af75603"
      unitRef="usdPerShare">1.95</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90ZXh0cmVnaW9uOjk1NWEzZTc5NTllYjQxZWJiMTk1Mzg3ZDU3NmVjYzlmXzQwMA_7601cda9-4417-4917-adbb-6af93429500e">&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a summary of RSU activity.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&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:45.752%"/&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.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.641%"/&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:8pt;font-weight:700;line-height:100%"&gt;Number of&lt;br/&gt;Shares&lt;br/&gt;Outstanding&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Fair Value&lt;br/&gt;per Share at&lt;br/&gt;Grant Date&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Term&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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:700;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(Years)&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2017&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:9pt;font-weight:400;line-height:100%"&gt;3,505&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2.03&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;3,152&#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:9pt;font-weight:400;line-height:100%"&gt;4.45&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;font-weight:400;line-height:100%"&gt;(1,399)&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:9pt;font-weight:400;line-height:100%"&gt;2.75&#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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;6,657&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(906)&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:9pt;font-weight:400;line-height:100%"&gt;2.17&#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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2018&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:9pt;font-weight:400;line-height:100%"&gt;4,352&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3.52&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;2,112&#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:9pt;font-weight:400;line-height:100%"&gt;11.50&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;font-weight:400;line-height:100%"&gt;(1,707)&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:9pt;font-weight:400;line-height:100%"&gt;3.87&#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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;27,156&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(494)&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:9pt;font-weight:400;line-height:100%"&gt;4.81&#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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2019&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:9pt;font-weight:400;line-height:100%"&gt;4,263&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7.19&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;1,550&#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:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;55.66&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;font-weight:400;line-height:100%"&gt;(2,085)&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:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7.26&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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;125,578&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(140)&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:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19.47&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;/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:9pt;font-weight:400;line-height:100%"&gt;Outstanding 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:9pt;font-weight:400;line-height:100%"&gt;3,588&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;27.61&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;629,633&#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:9pt;font-weight:400;line-height:100%"&gt;Expected to vest at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;3,588&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;27.61&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.08&lt;/span&gt;&lt;/td&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;629,633&#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;/table&gt;&lt;/div&gt;&lt;div style="text-align:center;text-indent:27pt"&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:8.458%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:89.342%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;padding-left:27pt;text-align:justify;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&#160;&#160;&#160;&#160;The intrinsic value of RSUs vested is based upon the value of the Company&#x2019;s stock when vested. The intrinsic value of RSUs outstanding and expected to vest as of December&#160;31, 2020 is based on the closing price of the last trading day during the period ended December&#160;31, 2020. The Company&#x2019;s stock fair value used in this computation was $175.47&#160;per share.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i8e4f26f8ac7b4fa3b89f0603039da0aa_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzItMS0xLTEtMA_254fcfca-5240-42cb-88f8-e9140749ce1f"
      unitRef="shares">3505000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i8e4f26f8ac7b4fa3b89f0603039da0aa_I20171231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzItMy0xLTEtMA_35929210-3e00-4e7d-94b2-ac0abf1c88bf"
      unitRef="usdPerShare">2.03</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i7afbd2e29f1f4a019ecc1e3dec86344b_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzMtMS0xLTEtMA_619b6067-a411-4071-ac2b-c389d154a99b"
      unitRef="shares">3152000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i7afbd2e29f1f4a019ecc1e3dec86344b_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzMtMy0xLTEtMA_af202923-c1a8-4bbe-9ded-c283820f143f"
      unitRef="usdPerShare">4.45</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i7afbd2e29f1f4a019ecc1e3dec86344b_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzQtMS0xLTEtMA_11b25ed6-c249-46b9-b8b3-b2ba2a5247e3"
      unitRef="shares">1399000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i7afbd2e29f1f4a019ecc1e3dec86344b_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzQtMy0xLTEtMA_9d928b76-b9d1-47c2-b169-f87a45723cc8"
      unitRef="usdPerShare">2.75</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i7afbd2e29f1f4a019ecc1e3dec86344b_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzQtNy0xLTEtMA_f3634ea4-7e5e-4925-9ee2-972ceed6c014"
      unitRef="usd">6657000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i7afbd2e29f1f4a019ecc1e3dec86344b_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzUtMS0xLTEtMA_2cfd1411-3491-4bd8-b0e5-900b7e12e96f"
      unitRef="shares">906000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="i7afbd2e29f1f4a019ecc1e3dec86344b_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzUtMy0xLTEtMA_50e92ece-2e86-406a-b91b-c5a65c943db0"
      unitRef="usdPerShare">2.17</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i18d016f14e1d488ab7e318c885db725d_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzYtMS0xLTEtMA_7d82fb11-c789-4f72-8bc7-bc3d7cadbc66"
      unitRef="shares">4352000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i18d016f14e1d488ab7e318c885db725d_I20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzYtMy0xLTEtMA_1f7842a3-034a-4537-8801-a01ba9f76e01"
      unitRef="usdPerShare">3.52</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i801bfc89358142848e59c2cf9ef90d99_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzctMS0xLTEtMA_5317a697-f54c-4406-91ec-a326dbef2516"
      unitRef="shares">2112000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i801bfc89358142848e59c2cf9ef90d99_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzctMy0xLTEtMA_f528858e-fb9b-45c9-bd69-68dc12629f19"
      unitRef="usdPerShare">11.50</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i801bfc89358142848e59c2cf9ef90d99_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzgtMS0xLTEtMA_917771f2-e8c7-47bd-b2e3-ccdd0735aa8d"
      unitRef="shares">1707000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i801bfc89358142848e59c2cf9ef90d99_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzgtMy0xLTEtMA_bcb5e3bd-1a60-42c9-8399-6a004384373f"
      unitRef="usdPerShare">3.87</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i801bfc89358142848e59c2cf9ef90d99_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzgtNy0xLTEtMA_7416294b-fa89-4c82-9304-c0b48230dcfb"
      unitRef="usd">27156000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i801bfc89358142848e59c2cf9ef90d99_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzktMS0xLTEtMA_fe9648dd-508d-4cc1-9cb7-5dd0232efa71"
      unitRef="shares">494000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="i801bfc89358142848e59c2cf9ef90d99_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzktMy0xLTEtMA_8865ad73-8051-4332-b30d-4c8903bf719c"
      unitRef="usdPerShare">4.81</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i3ca21c549b99429cbfbecadc2a8cc6a4_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzEwLTEtMS0xLTA_7409fee5-ea44-44ff-b68a-822abe120d35"
      unitRef="shares">4263000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i3ca21c549b99429cbfbecadc2a8cc6a4_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzEwLTMtMS0xLTA_ff404728-f077-4617-a096-84e40eb4d10c"
      unitRef="usdPerShare">7.19</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ie37269a496304be4911811b16dc961c6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzExLTEtMS0xLTA_862be320-7602-4091-ac77-80fee6da1d00"
      unitRef="shares">1550000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ie37269a496304be4911811b16dc961c6_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzExLTMtMS0xLTA_63fc9d34-be53-403a-ae5d-a6edb268602d"
      unitRef="usdPerShare">55.66</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="ie37269a496304be4911811b16dc961c6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzEyLTEtMS0xLTA_64134331-adc0-4785-ad06-447b739330d3"
      unitRef="shares">2085000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="ie37269a496304be4911811b16dc961c6_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzEyLTMtMS0xLTA_01f8d27d-4f68-42e2-b540-d432df42e8f4"
      unitRef="usdPerShare">7.26</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="ie37269a496304be4911811b16dc961c6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzEyLTctMS0xLTA_0fed5c5f-264c-4034-bcd4-83b9dd73519e"
      unitRef="usd">125578000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="ie37269a496304be4911811b16dc961c6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzEzLTEtMS0xLTA_9eed5f2c-ccf7-4257-aa64-e410740aed49"
      unitRef="shares">140000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="ie37269a496304be4911811b16dc961c6_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzEzLTMtMS0xLTA_c3717e67-2d3e-4b37-971f-0fd90ba78655"
      unitRef="usdPerShare">19.47</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i826472de5149465e9dac9bf5bbdb1331_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzE0LTEtMS0xLTA_15c09b82-429f-494f-abe7-cddc21df8a76"
      unitRef="shares">3588000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i826472de5149465e9dac9bf5bbdb1331_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzE0LTMtMS0xLTA_24e5a7c4-c3ab-4a44-b661-1a8b3772d5b5"
      unitRef="usdPerShare">27.61</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms
      contextRef="ie37269a496304be4911811b16dc961c6_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzE0LTUtMS0xLTA_4d53e738-6584-45bb-9504-04dd8b5e290a">P1Y29D</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested
      contextRef="i826472de5149465e9dac9bf5bbdb1331_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzE0LTctMS0xLTA_81046f26-3f0e-4f31-a287-54d3c7c09008"
      unitRef="usd">629633000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested>
    <enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestOutstandingNumber
      contextRef="i826472de5149465e9dac9bf5bbdb1331_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzE1LTEtMS0xLTA_23932925-2ab5-41b8-8969-a7b5d492c3f0"
      unitRef="shares">3588000</enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestOutstandingNumber>
    <enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherthanOptionsExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="i826472de5149465e9dac9bf5bbdb1331_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzE1LTMtMS0xLTA_b410abc5-15d1-47cb-956b-afb463ff57a2"
      unitRef="usdPerShare">27.61</enph:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherthanOptionsExpectedToVestOutstandingWeightedAverageExercisePrice>
    <enph:SharebasedCompensationArrangementbySharebasedPaymentAwardOtherthanOptionsExpectedtoVestWeightedAverageRemainingContractualTerm
      contextRef="ie37269a496304be4911811b16dc961c6_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzE1LTUtMS0xLTA_93532023-2087-4afe-a0cc-60a4971f89e3">P1Y29D</enph:SharebasedCompensationArrangementbySharebasedPaymentAwardOtherthanOptionsExpectedtoVestWeightedAverageRemainingContractualTerm>
    <enph:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsExpectedtoVestIntrinsicValueValue
      contextRef="i826472de5149465e9dac9bf5bbdb1331_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90YWJsZTo2NjhmNGU2YjBlNTE0MjgyOWQxYTU5YjM5OGM4M2VkNy90YWJsZXJhbmdlOjY2OGY0ZTZiMGU1MTQyODI5ZDFhNTliMzk4YzgzZWQ3XzE1LTctMS0xLTA_2cffc8c9-b982-490e-ab61-5d8352abd986"
      unitRef="usd">629633000</enph:SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsExpectedtoVestIntrinsicValueValue>
    <us-gaap:SharePrice
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNDcvZnJhZzo5NTVhM2U3OTU5ZWI0MWViYjE5NTM4N2Q1NzZlY2M5Zi90ZXh0cmVnaW9uOjk1NWEzZTc5NTllYjQxZWJiMTk1Mzg3ZDU3NmVjYzlmXzM4Nw_02d025c4-5b67-4269-8d18-0af81e20311c"
      unitRef="usdPerShare">175.47</us-gaap:SharePrice>
    <us-gaap:ShareBasedCompensationPerformanceSharesAwardOutstandingActivityTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90ZXh0cmVnaW9uOmNlODJkZjYzNjJjZDQyZWRiOTkyYjIyZDlhN2QzYWI3XzQwMw_e87225c2-d73d-435a-b7a8-831cd290ffef">&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a summary of PSU activity.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&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:45.752%"/&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.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.641%"/&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:8pt;font-weight:700;line-height:100%"&gt;Number of&lt;br/&gt;Shares&lt;br/&gt;Outstanding&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Fair Value&lt;br/&gt;per Share at&lt;br/&gt;Grant Date&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:8pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Term&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:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:700;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(Years)&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2017&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:9pt;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="3" style="background-color:#cceeff;padding:0 1pt"&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;/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:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;1,477&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4.65&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;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="3" style="background-color:#cceeff;padding:0 1pt"&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&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:9pt;font-weight:400;line-height:100%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(147)&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&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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2018&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:9pt;font-weight:400;line-height:100%"&gt;1,330&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4.66&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;1,052&#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:9pt;font-weight:400;line-height:100%"&gt;9.48&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;font-weight:400;line-height:100%"&gt;(1,063)&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:9pt;font-weight:400;line-height:100%"&gt;4.62&#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="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:9pt;font-weight:400;line-height:100%"&gt;10,818&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canceled&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:9pt;font-weight:400;line-height:100%"&gt;(364)&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:9pt;font-weight:400;line-height:100%"&gt;5.16&#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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2019&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:9pt;font-weight:400;line-height:100%"&gt;955&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9.83&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;989&#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:9pt;font-weight:400;line-height:100%"&gt;31.12&#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 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;font-weight:400;line-height:100%"&gt;(1,450)&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:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10.20&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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;52,144&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Canceled&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:9pt;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 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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;Outstanding at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;494&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;51.10&#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:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.2&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;86,668&#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="text-align:center"&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:8.458%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:89.342%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;padding-left:27pt;text-align:justify;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&#160;&#160;&#160;&#160;The intrinsic value of PSUs vested is based upon the value of the Company&#x2019;s stock when vested. The intrinsic value of PSUs outstanding and expected to vest as of December&#160;31, 2020 is based on the closing price of the last trading day during the period ended December&#160;31, 2020. The Company&#x2019;s stock fair value used in this computation was $175.47&#160;per share.&lt;/span&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationPerformanceSharesAwardOutstandingActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i654d06914e054f708aa03d18d4205d83_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzItMS0xLTEtMA_d1e05fdc-3a76-4537-8e34-f8be19199351"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i654d06914e054f708aa03d18d4205d83_I20171231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzItMy0xLTEtMA_dced7aeb-9d8a-4887-bf59-062c34d3bdbe"
      unitRef="usdPerShare"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i45e1e2d3660e497e8db402574b6274e6_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzMtMS0xLTEtMA_b511b8ad-5328-40b0-8233-e5c494095f60"
      unitRef="shares">1477000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i45e1e2d3660e497e8db402574b6274e6_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzMtMy0xLTEtMA_6dac29ff-923c-479a-9cbc-797afe33f9f2"
      unitRef="usdPerShare">4.65</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i45e1e2d3660e497e8db402574b6274e6_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzQtMS0xLTEtMA_de78a52e-9b9f-47eb-8b86-c4995f966136"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i45e1e2d3660e497e8db402574b6274e6_D20180101-20181231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzQtMy0xLTEtMA_6a803aeb-3659-46d9-bd16-4bea2029cfeb"
      unitRef="usdPerShare"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i45e1e2d3660e497e8db402574b6274e6_D20180101-20181231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzQtNy0xLTEtMA_d5d7a965-c981-438b-931a-c91a30f576ca"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i45e1e2d3660e497e8db402574b6274e6_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzUtMS0xLTEtMA_506b8dd7-819e-4418-b329-5d7beb66742b"
      unitRef="shares">147000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="i45e1e2d3660e497e8db402574b6274e6_D20180101-20181231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzUtMy0xLTEtMA_4e4262cb-568a-4d90-a512-f92a724b6b0b"
      unitRef="usdPerShare"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i286600ae0cdb4008802f310937847260_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzYtMS0xLTEtMA_49be2d87-88ce-430b-924f-e2d77ae6873f"
      unitRef="shares">1330000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i286600ae0cdb4008802f310937847260_I20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzYtMy0xLTEtMA_3ab4bbeb-fb44-4825-89cf-434a3ba82ae0"
      unitRef="usdPerShare">4.66</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i67bb7fd7df8b43eead474aa4846df12e_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzctMS0xLTEtMA_69757eec-b712-42a2-b113-487618a33381"
      unitRef="shares">1052000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i67bb7fd7df8b43eead474aa4846df12e_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzctMy0xLTEtMA_e7e716bb-6f50-49bd-9308-1214417782b3"
      unitRef="usdPerShare">9.48</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i67bb7fd7df8b43eead474aa4846df12e_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzgtMS0xLTEtMA_ae86cb7a-ffc1-4891-a487-5aa759de0fb3"
      unitRef="shares">1063000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i67bb7fd7df8b43eead474aa4846df12e_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzgtMy0xLTEtMA_087d85a1-90b8-4c18-8770-84120dec48a8"
      unitRef="usdPerShare">4.62</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i67bb7fd7df8b43eead474aa4846df12e_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzgtNy0xLTEtMA_9eb9b66d-9446-4e6a-acd7-baed0fe91d11"
      unitRef="usd">10818000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i67bb7fd7df8b43eead474aa4846df12e_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzktMS0xLTEtMA_13c709f4-cdf8-469b-89a3-65e359a7371a"
      unitRef="shares">364000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="i67bb7fd7df8b43eead474aa4846df12e_D20190101-20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzktMy0xLTEtMA_765caa27-050a-461b-b01e-848d20f66ca3"
      unitRef="usdPerShare">5.16</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="id882c3604a314baaaf046d62879b7347_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzEwLTEtMS0xLTA_dca9ee7f-dd63-496a-86d3-50f5c4501ce5"
      unitRef="shares">955000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="id882c3604a314baaaf046d62879b7347_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzEwLTMtMS0xLTA_ab021525-479e-48f2-86bf-c6f230c31753"
      unitRef="usdPerShare">9.83</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ifc92fc4a72854531bd37f627e79c8a9f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzExLTEtMS0xLTA_19ab99cf-46b0-441e-9524-f4f4f7ce931d"
      unitRef="shares">989000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ifc92fc4a72854531bd37f627e79c8a9f_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzExLTMtMS0xLTA_13488bc8-879c-40dd-a079-65c140563fab"
      unitRef="usdPerShare">31.12</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="ifc92fc4a72854531bd37f627e79c8a9f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzEyLTEtMS0xLTA_447de40d-223a-4065-b300-1256837659f6"
      unitRef="shares">1450000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="ifc92fc4a72854531bd37f627e79c8a9f_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzEyLTMtMS0xLTA_3df77bbe-031a-43d1-ae9a-0d9b78668465"
      unitRef="usdPerShare">10.20</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="ifc92fc4a72854531bd37f627e79c8a9f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzEyLTctMS0xLTA_f229dffc-66da-4114-a0d0-b326148c8530"
      unitRef="usd">52144000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="ifc92fc4a72854531bd37f627e79c8a9f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzEzLTEtMS0xLTA_24ec6712-58e9-4c40-ac52-108d3535e32d"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="ifc92fc4a72854531bd37f627e79c8a9f_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzEzLTMtMS0xLTA_4cf8ba13-52da-4f3f-b197-00a523c7bf43"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i8271d0dcbfdb4fbba891810a09809cf5_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzE0LTEtMS0xLTA_6231617d-7bb8-4989-8bb6-3372117393c0"
      unitRef="shares">494000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i8271d0dcbfdb4fbba891810a09809cf5_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzE0LTMtMS0xLTA_fbe54d56-707a-40a1-994d-d887be11f5a6"
      unitRef="usdPerShare">51.10</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms
      contextRef="ifc92fc4a72854531bd37f627e79c8a9f_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzE0LTUtMS0xLTA_9db98270-896d-4cc5-97ee-d246367f68c8">P0Y2M12D</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested
      contextRef="i8271d0dcbfdb4fbba891810a09809cf5_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90YWJsZTo1NWYzNGQ5OWJiNDk0NWExYjNjMDc4YjA4ZDAyODhlNy90YWJsZXJhbmdlOjU1ZjM0ZDk5YmI0OTQ1YTFiM2MwNzhiMDhkMDI4OGU3XzE0LTctMS0xLTA_4cea2b3e-274b-4553-86bd-d278e6a4f9d8"
      unitRef="usd">86668000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueNonvested>
    <us-gaap:SharePrice
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNTMvZnJhZzpjZTgyZGY2MzYyY2Q0MmVkYjk5MmIyMmQ5YTdkM2FiNy90ZXh0cmVnaW9uOmNlODJkZjYzNjJjZDQyZWRiOTkyYjIyZDlhN2QzYWI3XzM4OA_02d025c4-5b67-4269-8d18-0af81e20311c"
      unitRef="usdPerShare">175.47</us-gaap:SharePrice>
    <us-gaap:ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjIvZnJhZzoxNGU1YzI2MTFhZmM0ZTgwOTQzMTFkZmUwZTY3MmY1Mi90ZXh0cmVnaW9uOjE0ZTVjMjYxMWFmYzRlODA5NDMxMWRmZTBlNjcyZjUyXzQ5NDc4MDIzMjUxNDY_e2592f03-3fbb-4fee-becc-7e093cf1efb9">&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of ESPP activity for the years presented is as follows: (in thousands, except per share data):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:59.280%"/&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.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.622%"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2019&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:8pt;font-weight:700;line-height:100%"&gt;2018&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:9pt;font-weight:400;line-height:100%"&gt;Proceeds from common stock issued under ESPP&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,304&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,692&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;397&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares of common stock issued&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:9pt;font-weight:400;line-height:100%"&gt;347&#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:9pt;font-weight:400;line-height:100%"&gt;315&#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:9pt;font-weight:400;line-height:100%"&gt;439&#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:9pt;font-weight:400;line-height:100%"&gt;Weighted-average price per share&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;12.41&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;5.37&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.90&#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;</us-gaap:ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock>
    <enph:ProceedsfromIssuanceofCommonStockEmployeeStockPurchasePlan
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjIvZnJhZzoxNGU1YzI2MTFhZmM0ZTgwOTQzMTFkZmUwZTY3MmY1Mi90YWJsZTo0YjcxZDY4OTYwZDY0NzEyOWEwYmY1NWQ3MWYzYzFhNC90YWJsZXJhbmdlOjRiNzFkNjg5NjBkNjQ3MTI5YTBiZjU1ZDcxZjNjMWE0XzItMS0xLTEtMA_33ae9e7b-f08c-4e7d-aee5-486330d84328"
      unitRef="usd">4304000</enph:ProceedsfromIssuanceofCommonStockEmployeeStockPurchasePlan>
    <enph:ProceedsfromIssuanceofCommonStockEmployeeStockPurchasePlan
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjIvZnJhZzoxNGU1YzI2MTFhZmM0ZTgwOTQzMTFkZmUwZTY3MmY1Mi90YWJsZTo0YjcxZDY4OTYwZDY0NzEyOWEwYmY1NWQ3MWYzYzFhNC90YWJsZXJhbmdlOjRiNzFkNjg5NjBkNjQ3MTI5YTBiZjU1ZDcxZjNjMWE0XzItMy0xLTEtMA_bdb4e464-ea7d-4531-9597-d34784d9a457"
      unitRef="usd">1692000</enph:ProceedsfromIssuanceofCommonStockEmployeeStockPurchasePlan>
    <enph:ProceedsfromIssuanceofCommonStockEmployeeStockPurchasePlan
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjIvZnJhZzoxNGU1YzI2MTFhZmM0ZTgwOTQzMTFkZmUwZTY3MmY1Mi90YWJsZTo0YjcxZDY4OTYwZDY0NzEyOWEwYmY1NWQ3MWYzYzFhNC90YWJsZXJhbmdlOjRiNzFkNjg5NjBkNjQ3MTI5YTBiZjU1ZDcxZjNjMWE0XzItNS0xLTEtMA_da768129-757e-4188-a7cf-8d41732ce1cd"
      unitRef="usd">397000</enph:ProceedsfromIssuanceofCommonStockEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjIvZnJhZzoxNGU1YzI2MTFhZmM0ZTgwOTQzMTFkZmUwZTY3MmY1Mi90YWJsZTo0YjcxZDY4OTYwZDY0NzEyOWEwYmY1NWQ3MWYzYzFhNC90YWJsZXJhbmdlOjRiNzFkNjg5NjBkNjQ3MTI5YTBiZjU1ZDcxZjNjMWE0XzMtMS0xLTEtMA_28336113-5c9e-4cc8-8006-33b263cf75ec"
      unitRef="shares">347000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjIvZnJhZzoxNGU1YzI2MTFhZmM0ZTgwOTQzMTFkZmUwZTY3MmY1Mi90YWJsZTo0YjcxZDY4OTYwZDY0NzEyOWEwYmY1NWQ3MWYzYzFhNC90YWJsZXJhbmdlOjRiNzFkNjg5NjBkNjQ3MTI5YTBiZjU1ZDcxZjNjMWE0XzMtMy0xLTEtMA_4e8ae5f6-71b0-4644-a578-8649e7104567"
      unitRef="shares">315000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjIvZnJhZzoxNGU1YzI2MTFhZmM0ZTgwOTQzMTFkZmUwZTY3MmY1Mi90YWJsZTo0YjcxZDY4OTYwZDY0NzEyOWEwYmY1NWQ3MWYzYzFhNC90YWJsZXJhbmdlOjRiNzFkNjg5NjBkNjQ3MTI5YTBiZjU1ZDcxZjNjMWE0XzMtNS0xLTEtMA_df77c966-9f26-4777-a774-4d78ef225289"
      unitRef="shares">439000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <enph:EmployeeStockPurchasePlanWeightedAveragePurchasePriceofSharesPurchased
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjIvZnJhZzoxNGU1YzI2MTFhZmM0ZTgwOTQzMTFkZmUwZTY3MmY1Mi90YWJsZTo0YjcxZDY4OTYwZDY0NzEyOWEwYmY1NWQ3MWYzYzFhNC90YWJsZXJhbmdlOjRiNzFkNjg5NjBkNjQ3MTI5YTBiZjU1ZDcxZjNjMWE0XzQtMS0xLTEtMA_a5b60a72-d02e-45a0-bc5f-a3aff49dfd03"
      unitRef="usdPerShare">12.41</enph:EmployeeStockPurchasePlanWeightedAveragePurchasePriceofSharesPurchased>
    <enph:EmployeeStockPurchasePlanWeightedAveragePurchasePriceofSharesPurchased
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjIvZnJhZzoxNGU1YzI2MTFhZmM0ZTgwOTQzMTFkZmUwZTY3MmY1Mi90YWJsZTo0YjcxZDY4OTYwZDY0NzEyOWEwYmY1NWQ3MWYzYzFhNC90YWJsZXJhbmdlOjRiNzFkNjg5NjBkNjQ3MTI5YTBiZjU1ZDcxZjNjMWE0XzQtMy0xLTEtMA_3ef271a9-9b30-4fc8-af43-c3296f1c5771"
      unitRef="usdPerShare">5.37</enph:EmployeeStockPurchasePlanWeightedAveragePurchasePriceofSharesPurchased>
    <enph:EmployeeStockPurchasePlanWeightedAveragePurchasePriceofSharesPurchased
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjIvZnJhZzoxNGU1YzI2MTFhZmM0ZTgwOTQzMTFkZmUwZTY3MmY1Mi90YWJsZTo0YjcxZDY4OTYwZDY0NzEyOWEwYmY1NWQ3MWYzYzFhNC90YWJsZXJhbmdlOjRiNzFkNjg5NjBkNjQ3MTI5YTBiZjU1ZDcxZjNjMWE0XzQtNS0xLTEtMA_cec23d17-1c2e-47a3-926b-1978d91824fc"
      unitRef="usdPerShare">0.90</enph:EmployeeStockPurchasePlanWeightedAveragePurchasePriceofSharesPurchased>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90ZXh0cmVnaW9uOjU3NmY4MjgzNWM3MTQ4NjRhYTgwNjNmODRmMDk2MzVmXzg3OTYwOTMwMjY5Nzc_926a7afd-e416-43d5-9fa5-17be738da192">INCOME TAXES&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The domestic and foreign components of income (loss) before income taxes consisted of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:59.280%"/&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.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.622%"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2019&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:8pt;font-weight:700;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;United States&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;112,727&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;85,520&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(14,322)&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:9pt;font-weight:400;line-height:100%"&gt;Foreign&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:9pt;font-weight:400;line-height:100%"&gt;6,683&#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:9pt;font-weight:400;line-height:100%"&gt;4,594&#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:9pt;font-weight:400;line-height:100%"&gt;4,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income (loss) before income taxes&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;119,410&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;90,114&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;(10,229)&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:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The income taxes (benefit) provision for the years presented is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Years 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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Current:&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 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Federal&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:9pt;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:9pt;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:9pt;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:9pt;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:9pt;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:9pt;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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;State&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:9pt;font-weight:400;line-height:100%"&gt;636&#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:9pt;font-weight:400;line-height:100%"&gt;327&#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:9pt;font-weight:400;line-height:100%"&gt;42&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign&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:9pt;font-weight:400;line-height:100%"&gt;1,896&#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:9pt;font-weight:400;line-height:100%"&gt;1,589&#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:9pt;font-weight:400;line-height:100%"&gt;1,233&#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: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:9pt;font-weight:400;line-height:100%"&gt;2,532&#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:9pt;font-weight:400;line-height:100%"&gt;1,916&#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:9pt;font-weight:400;line-height:100%"&gt;1,275&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Federal&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:9pt;font-weight:400;line-height:100%"&gt;(13,445)&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:9pt;font-weight:400;line-height:100%"&gt;(56,959)&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:9pt;font-weight:400;line-height:100%"&gt;(35)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;State&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:9pt;font-weight:400;line-height:100%"&gt;(3,672)&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:9pt;font-weight:400;line-height:100%"&gt;(17,458)&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:9pt;font-weight:400;line-height:100%"&gt;(21)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,467&#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:9pt;font-weight:400;line-height:100%"&gt;179&#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: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:9pt;font-weight:400;line-height:100%"&gt;(17,117)&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:9pt;font-weight:400;line-height:100%"&gt;(72,950)&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:9pt;font-weight:400;line-height:100%"&gt;123&#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:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;Income taxes (benefit) provision &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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;(14,585)&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;(71,034)&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;1,398&#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:27pt"&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 income tax (benefit) provision and the amount computed by applying the statutory federal income tax rate of 21% to income (loss) before income taxes for the years presented is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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="15" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Years 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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Income tax (benefit) provision at statutory federal rate&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;25,076&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;18,929&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(2,148)&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:9pt;font-weight:400;line-height:100%"&gt;State taxes, net of federal benefit&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:9pt;font-weight:400;line-height:100%"&gt;(3,098)&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:9pt;font-weight:400;line-height:100%"&gt;(17,197)&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:9pt;font-weight:400;line-height:100%"&gt;17&#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:9pt;font-weight:400;line-height:100%"&gt;Change in 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(71,300)&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:9pt;font-weight:400;line-height:100%"&gt;8,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;/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:9pt;font-weight:400;line-height:100%"&gt;Foreign tax rate and tax law differential&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:9pt;font-weight:400;line-height:100%"&gt;611&#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:9pt;font-weight:400;line-height:100%"&gt;1,206&#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:9pt;font-weight:400;line-height:100%"&gt;313&#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:9pt;font-weight:400;line-height:100%"&gt;Tax credits&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:9pt;font-weight:400;line-height:100%"&gt;(5,835)&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:9pt;font-weight:400;line-height:100%"&gt;(1,803)&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:9pt;font-weight:400;line-height:100%"&gt;(378)&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:9pt;font-weight:400;line-height:100%"&gt;Stock-based compensation&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:9pt;font-weight:400;line-height:100%"&gt;(50,818)&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:9pt;font-weight:400;line-height:100%"&gt;(8,072)&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:9pt;font-weight:400;line-height:100%"&gt;(953)&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:9pt;font-weight:400;line-height:100%"&gt;Other permanent items&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:9pt;font-weight:400;line-height:100%"&gt;(253)&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:9pt;font-weight:400;line-height:100%"&gt;31&#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:9pt;font-weight:400;line-height:100%"&gt;235&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Other nondeductible/nontaxable items&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:9pt;font-weight:400;line-height:100%"&gt;1,525&#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:9pt;font-weight:400;line-height:100%"&gt;2,765&#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:9pt;font-weight:400;line-height:100%"&gt;(5,112)&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:9pt;font-weight:400;line-height:100%"&gt;Uncertain tax positions&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:9pt;font-weight:400;line-height:100%"&gt;1,530&#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:9pt;font-weight:400;line-height:100%"&gt;504&#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:9pt;font-weight:400;line-height:100%"&gt;107&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;GILTI&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;1,086&#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:9pt;font-weight:400;line-height:100%"&gt;917&#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:9pt;font-weight:400;line-height:100%"&gt;Section 162(m)&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:9pt;font-weight:400;line-height:100%"&gt;11,469&#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:9pt;font-weight:400;line-height:100%"&gt;2,817&#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:9pt;font-weight:400;line-height:100%"&gt;202&#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:9pt;font-weight:400;line-height:100%"&gt;Warrant mark-to-mark adjustment&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:9pt;font-weight:400;line-height:100%"&gt;5,208&#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:9pt;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 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:9pt;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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income tax (benefit) provision&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;(14,585)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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 #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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;(71,034)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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 #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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;1,398&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of significant components of the Company&#x2019;s deferred tax assets and liabilities as of December&#160;31, 2020 and 2019 is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:72.692%"/&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.639%"/&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="border-bottom: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:8pt;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:8pt;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:8pt;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:#cceeff;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:400;line-height:100%"&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 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Allowances and reserves&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;13,146&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;10,726&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net operating loss and tax credit carryforwards&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:9pt;font-weight:400;line-height:100%"&gt;53,116&#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:9pt;font-weight:400;line-height:100%"&gt;54,369&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Stock-based compensation&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:9pt;font-weight:400;line-height:100%"&gt;4,598&#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:9pt;font-weight:400;line-height:100%"&gt;3,753&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred revenue&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:9pt;font-weight:400;line-height:100%"&gt;20,765&#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:9pt;font-weight:400;line-height:100%"&gt;16,736&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fixed assets and intangibles&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:9pt;font-weight:400;line-height:100%"&gt;8,706&#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:9pt;font-weight:400;line-height:100%"&gt;2,720&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sec. 163(j) interest carryforward&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:9pt;font-weight:400;line-height:100%"&gt;4,401&#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:9pt;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;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other&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:9pt;font-weight:400;line-height:100%"&gt;7,007&#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:9pt;font-weight:400;line-height:100%"&gt;1,109&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Subtotal&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:9pt;font-weight:400;line-height:100%"&gt;111,739&#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:9pt;font-weight:400;line-height:100%"&gt;89,413&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total deferred tax assets&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:9pt;font-weight:400;line-height:100%"&gt;111,739&#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 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:9pt;font-weight:400;line-height:100%"&gt;89,413&#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:#cceeff;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:400;line-height:100%"&gt;Deferred tax liabilities:&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 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill&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:9pt;font-weight:400;line-height:100%"&gt;(1,719)&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:9pt;font-weight:400;line-height:100%"&gt;(1,368)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Unremitted foreign earnings&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:9pt;font-weight:400;line-height:100%"&gt;(7)&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:9pt;font-weight:400;line-height:100%"&gt;(5)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred cost of goods sold&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:9pt;font-weight:400;line-height:100%"&gt;(17,545)&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:9pt;font-weight:400;line-height:100%"&gt;(14,374)&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 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total deferred tax liabilities&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:9pt;font-weight:400;line-height:100%"&gt;(19,271)&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:9pt;font-weight:400;line-height:100%"&gt;(15,747)&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 30.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net deferred tax asset&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;92,468&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;73,666&#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-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company's accounting for deferred taxes involves the evaluation of a number of factors concerning the realizability of the Company's deferred tax assets. Assessing the realizability of deferred tax assets is dependent upon several factors, including the likelihood and amount, if any, of future taxable income in relevant jurisdictions during the periods in which those temporary differences become deductible. The Company's management forecasts taxable income by considering all available positive and negative evidence including its history of operating income or losses and its financial plans and estimates which are used to manage the business. These assumptions require significant judgment about future taxable income. The amount of deferred tax assets considered realizable is subject to adjustment in future periods if estimates of future taxable income are reduced.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has net operating loss carryforwards for federal and California income tax purposes of approximately $113.7&#160;million and $87.3&#160;million, respectively, as of December&#160;31, 2020. The federal and state net operating loss carryforwards, if not utilized, will expire beginning in 2036 and 2029, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has approximately $18.2&#160;million of federal research credit and $12.6&#160;million of state research credit carryforwards. The federal credits begin to expire in 2026 and the state credits can be carried forward indefinitely.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Utilization of some of the federal and state net operating loss and credit carryforwards are subject to annual limitations due to the &#x201c;change in ownership&#x201d; provisions of the Internal Revenue Code of&#160;1986 and similar state provisions. The Company has completed a Section&#160;382 analysis through December&#160;31, 2020, which indicated no such change has occurred through December&#160;31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The accounting for uncertain tax positions prescribes a recognition threshold and measurement attribute for the financial statement recognition and measurement of a tax position taken or expected to be taken in a tax return. The Company is required to recognize in the financial statements the impact of a tax position, if that position is more-likely-than-not of being sustained on audit, based on the technical merits of the position. The Company recorded a net charge for unrecognized tax benefits in 2020 of $1.8&#160;million.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company does not have any tax positions for which it is reasonably possible the total amount of gross unrecognized tax benefits will increase or decrease over the next year. The unrecognized tax benefits may increase or change during the next year for items that arise in the ordinary course of business.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A tabular reconciliation of the total amounts of unrecognized tax benefits for the years presented is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;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:61.034%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.034%"/&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.034%"/&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.038%"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2019&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:8pt;font-weight:700;line-height:100%"&gt;2018&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:9pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefits&#x2014;at beginning of year&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;6,589&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;6,325&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;6,106&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Decreases in balances related to tax positions taken in prior years&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;(370)&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:9pt;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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Increases in balances related to tax positions taken in current year&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:9pt;font-weight:400;line-height:100%"&gt;2,006&#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:9pt;font-weight:400;line-height:100%"&gt;771&#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:9pt;font-weight:400;line-height:100%"&gt;329&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lapses in statutes of limitations&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:9pt;font-weight:400;line-height:100%"&gt;(174)&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:9pt;font-weight:400;line-height:100%"&gt;(137)&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:9pt;font-weight:400;line-height:100%"&gt;(110)&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:9pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefits&#x2014;at end of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;8,421&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;6,589&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;6,325&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company includes interest and penalties related to unrecognized tax benefits within the benefit from (provision for) income taxes. As of years ended December&#160;31, 2020, 2019 and 2018, the total amount of gross interest and penalties accrued in each year was&#160;immaterial. Both the unrecognized tax benefits and the associated interest and penalties that are not expected to result in payment or receipt of cash within one year are classified as other non-current liabilities in the consolidated balance sheets. In connection with tax matters, the Company&#x2019;s interest and penalty expense recognized in&#160;2020, 2019 and 2018 in the consolidated statements of operations was immaterial.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 tax returns continue to remain effectively subject to examination by U.S. federal authorities for the years 2006 through 2020 and by California state authorities for the years 2006 through 2020 due to use and carryovers of net operating losses and credits.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90ZXh0cmVnaW9uOjU3NmY4MjgzNWM3MTQ4NjRhYTgwNjNmODRmMDk2MzVmXzg3OTYwOTMwMjY5ODE_ce8cdb94-61f9-4440-bb1a-d7c9c80d3c77">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The domestic and foreign components of income (loss) before income taxes consisted of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:59.280%"/&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.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.622%"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2019&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:8pt;font-weight:700;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;United States&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;112,727&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;85,520&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(14,322)&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:9pt;font-weight:400;line-height:100%"&gt;Foreign&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:9pt;font-weight:400;line-height:100%"&gt;6,683&#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:9pt;font-weight:400;line-height:100%"&gt;4,594&#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:9pt;font-weight:400;line-height:100%"&gt;4,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income (loss) before income taxes&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;119,410&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;90,114&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;(10,229)&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:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1YTA1NjY5MTE5ZTI0MmY0OGE3MGRmOWM3MjgxMjRmYi90YWJsZXJhbmdlOjVhMDU2NjkxMTllMjQyZjQ4YTcwZGY5YzcyODEyNGZiXzMtMS0xLTEtMA_4867067e-bafd-4e72-9642-c4a570637205"
      unitRef="usd">112727000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1YTA1NjY5MTE5ZTI0MmY0OGE3MGRmOWM3MjgxMjRmYi90YWJsZXJhbmdlOjVhMDU2NjkxMTllMjQyZjQ4YTcwZGY5YzcyODEyNGZiXzMtMy0xLTEtMA_21e47569-abc7-460e-888a-63132643256c"
      unitRef="usd">85520000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1YTA1NjY5MTE5ZTI0MmY0OGE3MGRmOWM3MjgxMjRmYi90YWJsZXJhbmdlOjVhMDU2NjkxMTllMjQyZjQ4YTcwZGY5YzcyODEyNGZiXzMtNS0xLTEtMA_3887ced4-c943-4998-8f51-f5b0dbae9358"
      unitRef="usd">-14322000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1YTA1NjY5MTE5ZTI0MmY0OGE3MGRmOWM3MjgxMjRmYi90YWJsZXJhbmdlOjVhMDU2NjkxMTllMjQyZjQ4YTcwZGY5YzcyODEyNGZiXzQtMS0xLTEtMA_2489f223-d07d-4a01-877f-509cd9a6961a"
      unitRef="usd">6683000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1YTA1NjY5MTE5ZTI0MmY0OGE3MGRmOWM3MjgxMjRmYi90YWJsZXJhbmdlOjVhMDU2NjkxMTllMjQyZjQ4YTcwZGY5YzcyODEyNGZiXzQtMy0xLTEtMA_0f01aa49-07dd-44e0-90b2-693fc21775a2"
      unitRef="usd">4594000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1YTA1NjY5MTE5ZTI0MmY0OGE3MGRmOWM3MjgxMjRmYi90YWJsZXJhbmdlOjVhMDU2NjkxMTllMjQyZjQ4YTcwZGY5YzcyODEyNGZiXzQtNS0xLTEtMA_0e973bd3-baeb-4326-b8a8-9d9f86602e7d"
      unitRef="usd">4093000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1YTA1NjY5MTE5ZTI0MmY0OGE3MGRmOWM3MjgxMjRmYi90YWJsZXJhbmdlOjVhMDU2NjkxMTllMjQyZjQ4YTcwZGY5YzcyODEyNGZiXzUtMS0xLTEtMA_6f673a79-84fb-4602-803e-672eee733b83"
      unitRef="usd">119410000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1YTA1NjY5MTE5ZTI0MmY0OGE3MGRmOWM3MjgxMjRmYi90YWJsZXJhbmdlOjVhMDU2NjkxMTllMjQyZjQ4YTcwZGY5YzcyODEyNGZiXzUtMy0xLTEtMA_8b4c2ad1-8516-4c4e-ad71-d631e548d6c0"
      unitRef="usd">90114000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1YTA1NjY5MTE5ZTI0MmY0OGE3MGRmOWM3MjgxMjRmYi90YWJsZXJhbmdlOjVhMDU2NjkxMTllMjQyZjQ4YTcwZGY5YzcyODEyNGZiXzUtNS0xLTEtMA_c77340c2-005c-49fa-b422-627462318bf0"
      unitRef="usd">-10229000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90ZXh0cmVnaW9uOjU3NmY4MjgzNWM3MTQ4NjRhYTgwNjNmODRmMDk2MzVmXzg3OTYwOTMwMjY5ODI_fb087bca-4009-4a0a-9984-964cc83e3ca2">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The income taxes (benefit) provision for the years presented is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Years 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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Current:&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 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Federal&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:9pt;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:9pt;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:9pt;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:9pt;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:9pt;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:9pt;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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;State&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:9pt;font-weight:400;line-height:100%"&gt;636&#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:9pt;font-weight:400;line-height:100%"&gt;327&#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:9pt;font-weight:400;line-height:100%"&gt;42&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign&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:9pt;font-weight:400;line-height:100%"&gt;1,896&#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:9pt;font-weight:400;line-height:100%"&gt;1,589&#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:9pt;font-weight:400;line-height:100%"&gt;1,233&#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: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:9pt;font-weight:400;line-height:100%"&gt;2,532&#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:9pt;font-weight:400;line-height:100%"&gt;1,916&#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:9pt;font-weight:400;line-height:100%"&gt;1,275&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Federal&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:9pt;font-weight:400;line-height:100%"&gt;(13,445)&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:9pt;font-weight:400;line-height:100%"&gt;(56,959)&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:9pt;font-weight:400;line-height:100%"&gt;(35)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;State&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:9pt;font-weight:400;line-height:100%"&gt;(3,672)&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:9pt;font-weight:400;line-height:100%"&gt;(17,458)&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:9pt;font-weight:400;line-height:100%"&gt;(21)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,467&#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:9pt;font-weight:400;line-height:100%"&gt;179&#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: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:9pt;font-weight:400;line-height:100%"&gt;(17,117)&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:9pt;font-weight:400;line-height:100%"&gt;(72,950)&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:9pt;font-weight:400;line-height:100%"&gt;123&#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:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;Income taxes (benefit) provision &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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;(14,585)&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;(71,034)&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;1,398&#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:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzQtMS0xLTEtMA_9350a787-38d4-443e-a161-b8d9c3586900"
      unitRef="usd">0</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzQtMy0xLTEtMA_fcba494c-d81b-4ce4-8c97-d2806ad2cf18"
      unitRef="usd">0</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzQtNS0xLTEtMA_efda7ee4-8117-43f4-a22b-bec889c7caf5"
      unitRef="usd">0</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzUtMS0xLTEtMA_045b5626-aaa6-44ba-9d57-6911c15918ba"
      unitRef="usd">636000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzUtMy0xLTEtMA_5cf09a9d-0b1b-446e-b79b-af57aade27d4"
      unitRef="usd">327000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzUtNS0xLTEtMA_1fdc09de-a9d2-42a6-8a1a-ce6147d1627c"
      unitRef="usd">42000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzYtMS0xLTEtMA_dd266a7f-4207-49ef-afe8-716f156fb235"
      unitRef="usd">1896000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzYtMy0xLTEtMA_8e9efeaf-9a85-41f3-a0f1-560aa267e286"
      unitRef="usd">1589000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzYtNS0xLTEtMA_57a3c20f-24a9-45e5-9069-0bf153982d15"
      unitRef="usd">1233000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzctMS0xLTEtMA_4c2714d0-797e-4a15-b876-dcc001ad325c"
      unitRef="usd">2532000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzctMy0xLTEtMA_63b4fb72-242b-49b7-a793-b7dc2b67e00f"
      unitRef="usd">1916000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzctNS0xLTEtMA_3d3e7610-134f-4ec7-b1f5-cce6057c0290"
      unitRef="usd">1275000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzktMS0xLTEtMA_c7d57c18-6572-40d0-92b7-b299a96b86ee"
      unitRef="usd">-13445000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzktMy0xLTEtMA_0bc8522d-4f71-4aac-9278-0e5fddf5c0d5"
      unitRef="usd">-56959000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzktNS0xLTEtMA_7c5b6402-8ad7-444d-97d4-90e3208c18b0"
      unitRef="usd">-35000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzEwLTEtMS0xLTA_a30dcc20-2189-47f9-94af-3693e99cccd8"
      unitRef="usd">-3672000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzEwLTMtMS0xLTA_5b221fc5-f9f2-44b4-b952-937bdb2a3180"
      unitRef="usd">-17458000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzEwLTUtMS0xLTA_36d8d611-0e1f-4369-941f-0f91f1c36478"
      unitRef="usd">-21000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzExLTEtMS0xLTA_aadeb235-9cbb-457c-8a7e-761b33bf6cd0"
      unitRef="usd">0</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzExLTMtMS0xLTA_c971d28f-2047-4dc4-8d8a-cc9ea513d121"
      unitRef="usd">1467000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzExLTUtMS0xLTA_46b1b23d-704a-45fe-85d7-6845f625b335"
      unitRef="usd">179000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzEyLTEtMS0xLTA_250627b7-692b-4896-a806-0db95f794db1"
      unitRef="usd">-17117000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzEyLTMtMS0xLTA_469e8c8d-c3d2-4882-b450-4a0aeac2a632"
      unitRef="usd">-72950000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzEyLTUtMS0xLTA_9b3ad1c7-ea60-47ac-9f97-b31a7b0efb23"
      unitRef="usd">123000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzEzLTEtMS0xLTA_33fda694-7834-4b16-8016-933aea5fd6c0"
      unitRef="usd">-14585000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzEzLTMtMS0xLTA_09ae1a89-4fea-442e-ac82-29961748f9e8"
      unitRef="usd">-71034000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTowZjcwMjUzNmI5Mjg0YzE0OGZmNGVlYmU0YjFkMzM4OC90YWJsZXJhbmdlOjBmNzAyNTM2YjkyODRjMTQ4ZmY0ZWViZTRiMWQzMzg4XzEzLTUtMS0xLTA_39518363-fc5b-47a7-8d25-5eba0f515654"
      unitRef="usd">1398000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90ZXh0cmVnaW9uOjU3NmY4MjgzNWM3MTQ4NjRhYTgwNjNmODRmMDk2MzVmXzg3OTYwOTMwMjY5ODA_af05aee7-7880-4192-a4b7-11c0cea74ed2">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&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 income tax (benefit) provision and the amount computed by applying the statutory federal income tax rate of 21% to income (loss) before income taxes for the years presented is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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="15" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Years 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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Income tax (benefit) provision at statutory federal rate&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;25,076&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;18,929&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(2,148)&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:9pt;font-weight:400;line-height:100%"&gt;State taxes, net of federal benefit&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:9pt;font-weight:400;line-height:100%"&gt;(3,098)&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:9pt;font-weight:400;line-height:100%"&gt;(17,197)&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:9pt;font-weight:400;line-height:100%"&gt;17&#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:9pt;font-weight:400;line-height:100%"&gt;Change in 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(71,300)&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:9pt;font-weight:400;line-height:100%"&gt;8,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;/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:9pt;font-weight:400;line-height:100%"&gt;Foreign tax rate and tax law differential&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:9pt;font-weight:400;line-height:100%"&gt;611&#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:9pt;font-weight:400;line-height:100%"&gt;1,206&#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:9pt;font-weight:400;line-height:100%"&gt;313&#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:9pt;font-weight:400;line-height:100%"&gt;Tax credits&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:9pt;font-weight:400;line-height:100%"&gt;(5,835)&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:9pt;font-weight:400;line-height:100%"&gt;(1,803)&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:9pt;font-weight:400;line-height:100%"&gt;(378)&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:9pt;font-weight:400;line-height:100%"&gt;Stock-based compensation&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:9pt;font-weight:400;line-height:100%"&gt;(50,818)&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:9pt;font-weight:400;line-height:100%"&gt;(8,072)&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:9pt;font-weight:400;line-height:100%"&gt;(953)&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:9pt;font-weight:400;line-height:100%"&gt;Other permanent items&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:9pt;font-weight:400;line-height:100%"&gt;(253)&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:9pt;font-weight:400;line-height:100%"&gt;31&#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:9pt;font-weight:400;line-height:100%"&gt;235&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Other nondeductible/nontaxable items&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:9pt;font-weight:400;line-height:100%"&gt;1,525&#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:9pt;font-weight:400;line-height:100%"&gt;2,765&#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:9pt;font-weight:400;line-height:100%"&gt;(5,112)&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:9pt;font-weight:400;line-height:100%"&gt;Uncertain tax positions&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:9pt;font-weight:400;line-height:100%"&gt;1,530&#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:9pt;font-weight:400;line-height:100%"&gt;504&#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:9pt;font-weight:400;line-height:100%"&gt;107&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;GILTI&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;1,086&#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:9pt;font-weight:400;line-height:100%"&gt;917&#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:9pt;font-weight:400;line-height:100%"&gt;Section 162(m)&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:9pt;font-weight:400;line-height:100%"&gt;11,469&#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:9pt;font-weight:400;line-height:100%"&gt;2,817&#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:9pt;font-weight:400;line-height:100%"&gt;202&#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:9pt;font-weight:400;line-height:100%"&gt;Warrant mark-to-mark adjustment&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:9pt;font-weight:400;line-height:100%"&gt;5,208&#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:9pt;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 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:9pt;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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income tax (benefit) provision&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;(14,585)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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 #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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;(71,034)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&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 #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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;1,398&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzMtMS0xLTEtMA_11a85a37-d50f-41a6-995a-c2f18478c1a1"
      unitRef="usd">25076000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzMtMy0xLTEtMA_8caa5987-e52f-423a-b782-a5dade33ab15"
      unitRef="usd">18929000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzMtNS0xLTEtMA_fdd2e6fa-1e4b-46af-846c-4a2f5962b6ec"
      unitRef="usd">-2148000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzQtMS0xLTEtMA_969fe3c2-bbb0-4ece-b7be-17fba12ad9ab"
      unitRef="usd">-3098000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzQtMy0xLTEtMA_a5b306e4-478b-49a3-bbdc-6e71ded1375c"
      unitRef="usd">-17197000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzQtNS0xLTEtMA_b1dadac3-dae9-403d-bdfa-5ca6ad21618c"
      unitRef="usd">17000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzUtMS0xLTEtMA_260c3a0b-534b-4486-8020-f34cc371c938"
      unitRef="usd">0</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzUtMy0xLTEtMA_a5adafce-6b4e-4049-bb21-fa64f42a4f84"
      unitRef="usd">-71300000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzUtNS0xLTEtMA_1f4aa67f-c3b8-4dd5-b93c-37bad4701c45"
      unitRef="usd">8198000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzYtMS0xLTEtMA_06a515af-c4af-448c-941a-a52f8166686b"
      unitRef="usd">611000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzYtMy0xLTEtMA_3c921053-56c1-4617-8f62-52c0146b50fb"
      unitRef="usd">1206000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzYtNS0xLTEtMA_8f953d64-731e-4656-94ff-a21ea483835a"
      unitRef="usd">313000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzctMS0xLTEtMA_07f12239-4b8f-4e47-a429-0e84f5366c98"
      unitRef="usd">5835000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzctMy0xLTEtMA_644e6858-bd09-4828-a1a5-d2a83a8e136d"
      unitRef="usd">1803000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzctNS0xLTEtMA_fabe1dc4-fbd8-4f88-a179-16d2d96627d0"
      unitRef="usd">378000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzgtMS0xLTEtMA_be0dc05b-bae3-4ac2-86ed-e5baab4aa0b0"
      unitRef="usd">-50818000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzgtMy0xLTEtMA_8ba7e9f5-f0e4-451f-8e70-931fd7cf3a56"
      unitRef="usd">-8072000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzgtNS0xLTEtMA_25d9e969-06b5-400b-b59c-90f79129e439"
      unitRef="usd">-953000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzktMS0xLTEtMA_5adca0f2-3031-4807-bb01-6743a24dbe3d"
      unitRef="usd">-253000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzktMy0xLTEtMA_37443d79-0c35-466b-855b-6f4c5d76288b"
      unitRef="usd">31000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzktNS0xLTEtMA_4735c124-5573-4554-886e-c8e0ce6dd045"
      unitRef="usd">235000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <enph:IncomeTaxReconciliationNondeductibleAndNontaxableExpenseOther
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzExLTEtMS0xLTA_3528c04c-0619-4d5d-87e6-7bb9a2bf7497"
      unitRef="usd">1525000</enph:IncomeTaxReconciliationNondeductibleAndNontaxableExpenseOther>
    <enph:IncomeTaxReconciliationNondeductibleAndNontaxableExpenseOther
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzExLTMtMS0xLTA_23666846-772a-433d-b3f4-5ff43a484776"
      unitRef="usd">2765000</enph:IncomeTaxReconciliationNondeductibleAndNontaxableExpenseOther>
    <enph:IncomeTaxReconciliationNondeductibleAndNontaxableExpenseOther
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzExLTUtMS0xLTA_c9b398cb-c7cb-4fa0-9bda-35e40b2aaf06"
      unitRef="usd">-5112000</enph:IncomeTaxReconciliationNondeductibleAndNontaxableExpenseOther>
    <us-gaap:IncomeTaxReconciliationTaxContingenciesForeign
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzEyLTEtMS0xLTA_3d457d8a-9705-4848-9ea4-472a9dfcb239"
      unitRef="usd">1530000</us-gaap:IncomeTaxReconciliationTaxContingenciesForeign>
    <us-gaap:IncomeTaxReconciliationTaxContingenciesForeign
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzEyLTMtMS0xLTA_6a9c343b-a628-43c9-a7cd-8d13afd0666b"
      unitRef="usd">504000</us-gaap:IncomeTaxReconciliationTaxContingenciesForeign>
    <us-gaap:IncomeTaxReconciliationTaxContingenciesForeign
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzEyLTUtMS0xLTA_227d295f-7960-45c5-a04b-fb9734225a8d"
      unitRef="usd">107000</us-gaap:IncomeTaxReconciliationTaxContingenciesForeign>
    <enph:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzE0LTEtMS0xLTA_2fb028a7-65fd-4b00-8d89-a53c6a8a0a02"
      unitRef="usd">0</enph:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount>
    <enph:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzE0LTMtMS0xLTA_2a492ebe-d0f6-4ed1-9106-f9f5c0c68b77"
      unitRef="usd">1086000</enph:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount>
    <enph:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzE0LTUtMS0xLTA_65278d15-678f-4cf5-a3fb-de2bc54ac853"
      unitRef="usd">917000</enph:EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxedIncomeAmount>
    <enph:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessCompensationAmount
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzE1LTEtMS0xLTA_6f001cd5-cf6c-4f50-b49e-5838d5cb9fc9"
      unitRef="usd">11469000</enph:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessCompensationAmount>
    <enph:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessCompensationAmount
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzE1LTMtMS0xLTA_e0539e22-ea0b-4f9f-b8bb-19553b33b34b"
      unitRef="usd">2817000</enph:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessCompensationAmount>
    <enph:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessCompensationAmount
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzE1LTUtMS0xLTA_3d91b9ca-2868-4058-8fb4-0f4b222a6da8"
      unitRef="usd">202000</enph:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessCompensationAmount>
    <enph:EffectiveIncomeTaxReconciliationWarrantMarkToMarkAdjustment
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzE2LTEtMS0xLTgyNTM_b9a5a89c-2bfb-451e-a497-94d9e0b71a26"
      unitRef="usd">5208000</enph:EffectiveIncomeTaxReconciliationWarrantMarkToMarkAdjustment>
    <enph:EffectiveIncomeTaxReconciliationWarrantMarkToMarkAdjustment
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzE2LTMtMS0xLTg4MDU_b338006f-810d-42e6-bf51-5fbd9e127d7d"
      unitRef="usd">0</enph:EffectiveIncomeTaxReconciliationWarrantMarkToMarkAdjustment>
    <enph:EffectiveIncomeTaxReconciliationWarrantMarkToMarkAdjustment
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzE2LTUtMS0xLTg4MDU_53c55e9f-0658-4aa1-86a9-721ff5afa4d2"
      unitRef="usd">0</enph:EffectiveIncomeTaxReconciliationWarrantMarkToMarkAdjustment>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzE2LTEtMS0xLTA_8217742e-50eb-4bd3-ab7c-886819447abd"
      unitRef="usd">-14585000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzE2LTMtMS0xLTA_9c4d2917-0c24-4fea-9f92-24e58937fa51"
      unitRef="usd">-71034000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTpjN2NlNWVhMjgxNTA0ZjI3OWJjMzJiMTM5YjQ4OTRjMS90YWJsZXJhbmdlOmM3Y2U1ZWEyODE1MDRmMjc5YmMzMmIxMzliNDg5NGMxXzE2LTUtMS0xLTA_1e2798df-4dc3-4c30-8d5b-2fc280bfd46c"
      unitRef="usd">1398000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90ZXh0cmVnaW9uOjU3NmY4MjgzNWM3MTQ4NjRhYTgwNjNmODRmMDk2MzVmXzg3OTYwOTMwMjY5Nzk_25da8ff3-b4df-49f7-aa01-0dcb111a1c6e">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of significant components of the Company&#x2019;s deferred tax assets and liabilities as of December&#160;31, 2020 and 2019 is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:72.692%"/&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.639%"/&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="border-bottom: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:8pt;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:8pt;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:8pt;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:#cceeff;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:400;line-height:100%"&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 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Allowances and reserves&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;13,146&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;10,726&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net operating loss and tax credit carryforwards&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:9pt;font-weight:400;line-height:100%"&gt;53,116&#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:9pt;font-weight:400;line-height:100%"&gt;54,369&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Stock-based compensation&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:9pt;font-weight:400;line-height:100%"&gt;4,598&#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:9pt;font-weight:400;line-height:100%"&gt;3,753&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred revenue&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:9pt;font-weight:400;line-height:100%"&gt;20,765&#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:9pt;font-weight:400;line-height:100%"&gt;16,736&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Fixed assets and intangibles&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:9pt;font-weight:400;line-height:100%"&gt;8,706&#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:9pt;font-weight:400;line-height:100%"&gt;2,720&#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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sec. 163(j) interest carryforward&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:9pt;font-weight:400;line-height:100%"&gt;4,401&#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:9pt;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;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other&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:9pt;font-weight:400;line-height:100%"&gt;7,007&#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:9pt;font-weight:400;line-height:100%"&gt;1,109&#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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Subtotal&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:9pt;font-weight:400;line-height:100%"&gt;111,739&#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:9pt;font-weight:400;line-height:100%"&gt;89,413&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total deferred tax assets&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:9pt;font-weight:400;line-height:100%"&gt;111,739&#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 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:9pt;font-weight:400;line-height:100%"&gt;89,413&#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:#cceeff;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:400;line-height:100%"&gt;Deferred tax liabilities:&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 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill&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:9pt;font-weight:400;line-height:100%"&gt;(1,719)&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:9pt;font-weight:400;line-height:100%"&gt;(1,368)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Unremitted foreign earnings&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:9pt;font-weight:400;line-height:100%"&gt;(7)&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:9pt;font-weight:400;line-height:100%"&gt;(5)&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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Deferred cost of goods sold&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:9pt;font-weight:400;line-height:100%"&gt;(17,545)&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:9pt;font-weight:400;line-height:100%"&gt;(14,374)&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 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total deferred tax liabilities&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:9pt;font-weight:400;line-height:100%"&gt;(19,271)&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:9pt;font-weight:400;line-height:100%"&gt;(15,747)&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 30.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net deferred tax asset&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;92,468&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;73,666&#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:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <enph:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsCurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzMtMS0xLTEtMA_f4ac5dde-49f7-4547-abef-bae95c12d19a"
      unitRef="usd">13146000</enph:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsCurrent>
    <enph:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsCurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzMtMy0xLTEtMA_ce7e79f2-b011-4532-aa4a-c18e71af24fe"
      unitRef="usd">10726000</enph:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsCurrent>
    <enph:DeferredTaxAssetsOperatingLossCarryforwardsNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzQtMS0xLTEtMA_47403e85-4a43-4b8d-81a0-38c08f4fccf6"
      unitRef="usd">53116000</enph:DeferredTaxAssetsOperatingLossCarryforwardsNoncurrent>
    <enph:DeferredTaxAssetsOperatingLossCarryforwardsNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzQtMy0xLTEtMA_e15da748-fb89-4ec3-a0eb-d5166183a59b"
      unitRef="usd">54369000</enph:DeferredTaxAssetsOperatingLossCarryforwardsNoncurrent>
    <enph:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCostNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzUtMS0xLTEtMA_7458d299-ca2e-4388-b747-188fb8f2eb34"
      unitRef="usd">4598000</enph:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCostNoncurrent>
    <enph:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCostNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzUtMy0xLTEtMA_570f322d-aa30-4a3e-9d1d-78c26a105256"
      unitRef="usd">3753000</enph:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCostNoncurrent>
    <enph:DeferredTaxAssetsDeferredIncomeNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzYtMS0xLTEtMA_d8b199e0-b46d-49ee-a65f-743168639a91"
      unitRef="usd">20765000</enph:DeferredTaxAssetsDeferredIncomeNoncurrent>
    <enph:DeferredTaxAssetsDeferredIncomeNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzYtMy0xLTEtMA_524fffb3-b38c-4a38-9490-2923c862b9ac"
      unitRef="usd">16736000</enph:DeferredTaxAssetsDeferredIncomeNoncurrent>
    <enph:DeferredTaxLiabilitiesPropertyPlantAndEquipmentAndIntangibleAssetsNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzctMS0xLTEtMA_7fcf7e2a-8b16-43bb-af5f-9041504622cb"
      unitRef="usd">8706000</enph:DeferredTaxLiabilitiesPropertyPlantAndEquipmentAndIntangibleAssetsNoncurrent>
    <enph:DeferredTaxLiabilitiesPropertyPlantAndEquipmentAndIntangibleAssetsNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzctMy0xLTEtMA_3707a8a1-465c-4e4f-b80e-ab20091948bc"
      unitRef="usd">2720000</enph:DeferredTaxLiabilitiesPropertyPlantAndEquipmentAndIntangibleAssetsNoncurrent>
    <enph:DeferredTaxAssetsInterestCarryforward
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzgtMS0xLTEtMA_e21d362c-2bd9-44d7-ae5a-a5b20ab68c5a"
      unitRef="usd">4401000</enph:DeferredTaxAssetsInterestCarryforward>
    <enph:DeferredTaxAssetsInterestCarryforward
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzgtMy0xLTEtMA_f2bab142-3e6d-477a-8804-3f167ae4a533"
      unitRef="usd">0</enph:DeferredTaxAssetsInterestCarryforward>
    <enph:DeferredTaxAssetsDeferredExpenseOtherNoncurrent
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzktMS0xLTEtMA_c93e0cbc-2f82-446f-ae53-055f92f2918e"
      unitRef="usd">7007000</enph:DeferredTaxAssetsDeferredExpenseOtherNoncurrent>
    <enph:DeferredTaxAssetsDeferredExpenseOtherNoncurrent
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzktMy0xLTEtMA_2907e948-2911-4cb2-96ae-ef476e731c0d"
      unitRef="usd">1109000</enph:DeferredTaxAssetsDeferredExpenseOtherNoncurrent>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzEwLTEtMS0xLTA_d59ff952-7d7f-4a85-b67b-2be22bdfd67a"
      unitRef="usd">111739000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzEwLTMtMS0xLTA_7085e958-49bd-47bf-8e89-2322c380592a"
      unitRef="usd">89413000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzEyLTEtMS0xLTA_2265eca6-8f60-4e24-ab62-55617cb250f3"
      unitRef="usd">111739000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzEyLTMtMS0xLTA_f6ae1073-b4a4-4e1e-bba0-b61221d388b2"
      unitRef="usd">89413000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzE0LTEtMS0xLTA_ba817f71-a7ac-42c3-9acd-b08b768fb8ac"
      unitRef="usd">1719000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzE0LTMtMS0xLTA_8bb14ab1-d10c-410c-a6aa-6c81b1db0c6e"
      unitRef="usd">1368000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsGoodwill>
    <us-gaap:UndistributedEarningsOfForeignSubsidiaries
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzE1LTEtMS0xLTA_8e8b4ce8-6bbe-46fd-8537-8c79e0f13d28"
      unitRef="usd">7000</us-gaap:UndistributedEarningsOfForeignSubsidiaries>
    <us-gaap:UndistributedEarningsOfForeignSubsidiaries
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzE1LTMtMS0xLTA_25c5003f-7216-4f27-a18b-c4cdb454ee39"
      unitRef="usd">5000</us-gaap:UndistributedEarningsOfForeignSubsidiaries>
    <us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzE2LTEtMS0xLTA_2bd3913e-a5ac-44e5-aa71-b01e035a6998"
      unitRef="usd">17545000</us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts>
    <us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzE2LTMtMS0xLTA_5323f341-a568-4037-ab07-539b410dd459"
      unitRef="usd">14374000</us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzE3LTEtMS0xLTA_683633b2-1add-42d1-856d-b209e4dd8a7b"
      unitRef="usd">19271000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzE3LTMtMS0xLTA_6f7ce80d-e636-4a2f-9804-3043a4e75f11"
      unitRef="usd">15747000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzE4LTEtMS0xLTA_c424194f-4a09-422b-8066-3d8c4c9cc780"
      unitRef="usd">92468000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo1ZjQ2ZjU2ZTcyY2Q0YmUzOWI5ZjNkODM2NmQ1NjMxOS90YWJsZXJhbmdlOjVmNDZmNTZlNzJjZDRiZTM5YjlmM2Q4MzY2ZDU2MzE5XzE4LTMtMS0xLTA_eaf6667e-9e96-4c0a-b160-641cb3f08375"
      unitRef="usd">73666000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i437068545ff0470995a3718422263854_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90ZXh0cmVnaW9uOjU3NmY4MjgzNWM3MTQ4NjRhYTgwNjNmODRmMDk2MzVmXzE5Mzc_40c50df3-6efc-419a-9cf3-9c5ac55c7217"
      unitRef="usd">113700000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="ib43daa11df9f418994c90f199bb3a348_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90ZXh0cmVnaW9uOjU3NmY4MjgzNWM3MTQ4NjRhYTgwNjNmODRmMDk2MzVmXzE5NDQ_1e9c966b-15bc-4b65-9bd5-08bd03fd7afb"
      unitRef="usd">87300000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="i040dc4990d4e4015acccf0d08529037f_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90ZXh0cmVnaW9uOjU3NmY4MjgzNWM3MTQ4NjRhYTgwNjNmODRmMDk2MzVmXzIxMDY_ce038bd2-06df-4680-b473-b614c64fee60"
      unitRef="usd">18200000</us-gaap:TaxCreditCarryforwardAmount>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="i6df6ae3aa56c4c3ab56d7e68f1095d61_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90ZXh0cmVnaW9uOjU3NmY4MjgzNWM3MTQ4NjRhYTgwNjNmODRmMDk2MzVmXzIxNDA_44991aa2-520d-4402-9ff3-0aa942bdfc85"
      unitRef="usd">12600000</us-gaap:TaxCreditCarryforwardAmount>
    <us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90ZXh0cmVnaW9uOjU3NmY4MjgzNWM3MTQ4NjRhYTgwNjNmODRmMDk2MzVmXzMxNDc_2847d76d-147b-43d6-a73f-bf450e52b982"
      unitRef="usd">1800000</us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease>
    <us-gaap:SummaryOfIncomeTaxContingenciesTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90ZXh0cmVnaW9uOjU3NmY4MjgzNWM3MTQ4NjRhYTgwNjNmODRmMDk2MzVmXzg3OTYwOTMwMjY5Nzg_84b6e8d9-2ec2-4c60-b8cf-987f9446d32f">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A tabular reconciliation of the total amounts of unrecognized tax benefits for the years presented is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;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:61.034%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.034%"/&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.034%"/&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.038%"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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:8pt;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:8pt;font-weight:700;line-height:100%"&gt;2019&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:8pt;font-weight:700;line-height:100%"&gt;2018&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:9pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefits&#x2014;at beginning of year&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;6,589&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;6,325&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;6,106&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Decreases in balances related to tax positions taken in prior years&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;(370)&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:9pt;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 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Increases in balances related to tax positions taken in current year&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:9pt;font-weight:400;line-height:100%"&gt;2,006&#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:9pt;font-weight:400;line-height:100%"&gt;771&#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:9pt;font-weight:400;line-height:100%"&gt;329&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lapses in statutes of limitations&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:9pt;font-weight:400;line-height:100%"&gt;(174)&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:9pt;font-weight:400;line-height:100%"&gt;(137)&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:9pt;font-weight:400;line-height:100%"&gt;(110)&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:9pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefits&#x2014;at end of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;8,421&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;6,589&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;6,325&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:SummaryOfIncomeTaxContingenciesTextBlock>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzItMS0xLTEtMA_99b729a8-51ad-4b1f-a69f-4b846688c47a"
      unitRef="usd">6589000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzItMy0xLTEtMA_1e0b0ade-2056-442c-9c30-30a144c0ca4e"
      unitRef="usd">6325000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i313ff8cf793547cfaaab91c7ecbea720_I20171231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzItNS0xLTEtMA_a56c5af2-5062-4f39-ab8e-896cd59123fe"
      unitRef="usd">6106000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzQtMS0xLTEtMA_0778fae7-061d-4cf7-a895-6e47ba5abe04"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzQtMy0xLTEtMA_704be79d-ddf1-4a5e-bb45-e569f9d25445"
      unitRef="usd">370000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzQtNS0xLTEtMA_08ece37b-7ebf-4b59-8a9b-c0f322533e24"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzUtMS0xLTEtMA_d6397aad-b1fd-4a00-a60f-80e1022e17e6"
      unitRef="usd">2006000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzUtMy0xLTEtMA_37140f07-5980-4e34-860b-b08a12b10254"
      unitRef="usd">771000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzUtNS0xLTEtMA_50b7857d-972f-46d1-9796-ec424f8b079b"
      unitRef="usd">329000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzctMS0xLTEtMA_e6ffef3d-e261-4a21-8641-6f027978e673"
      unitRef="usd">174000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzctMy0xLTEtMA_f6dbb5b3-25ef-48b3-a1c8-0a47f70d96e3"
      unitRef="usd">137000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzctNS0xLTEtMA_d6134ae7-146b-4dcf-b276-3c29b1e7e59a"
      unitRef="usd">110000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzgtMS0xLTEtMA_580539a6-52b2-4a07-9d7f-d87f70d1608f"
      unitRef="usd">8421000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzgtMy0xLTEtMA_a97340f5-b2ac-493c-b062-2102720ac651"
      unitRef="usd">6589000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i1842cb56ea004bae997714ecb5bcda08_I20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNjgvZnJhZzo1NzZmODI4MzVjNzE0ODY0YWE4MDYzZjg0ZjA5NjM1Zi90YWJsZTo4MTcyODMxNjkxYjg0YzJhYjRhZTQzYTIwMTc1MzBlMy90YWJsZXJhbmdlOjgxNzI4MzE2OTFiODRjMmFiNGFlNDNhMjAxNzUzMGUzXzgtNS0xLTEtMA_17270fab-ae79-4503-adee-c5ceeee8b96f"
      unitRef="usd">6325000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:ConcentrationRiskDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzQvZnJhZzo1MzZhNDZhYWU4NGM0YjBkODM5NTk0N2I5ODE2MzEzNi90ZXh0cmVnaW9uOjUzNmE0NmFhZTg0YzRiMGQ4Mzk1OTQ3Yjk4MTYzMTM2Xzg3OTYwOTMwMjMwNTk_2a96285f-206a-4665-8156-f4776628c4cd">CONCENTRATION OF CREDIT RISK AND MAJOR CUSTOMERS&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company is potentially subject to financial instrument concentration of credit risk through its cash and cash equivalents and accounts receivable. The Company places its cash and cash equivalents with high quality institutions and performs periodic evaluations of their relative credit standing. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts receivable can be potentially exposed to a concentration of credit risk with its major customers. As of December&#160;31, 2020, amounts due from one customer represented approximately 36% of the total accounts receivable balance. As of December&#160;31, 2019, amounts due from three customers represented 34%, 14% and 11% of the total accounts receivable balance.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In 2020, one customer accounted for approximately 29% of total net revenues. In 2019, two customers accounted for approximately 21% and 12% of total net revenues. In 2018, one customer accounted for approximately 19% of total net revenues.&lt;/span&gt;&lt;/div&gt;</us-gaap:ConcentrationRiskDisclosureTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ibdd59d365a7541018545016fb66e98c4_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzQvZnJhZzo1MzZhNDZhYWU4NGM0YjBkODM5NTk0N2I5ODE2MzEzNi90ZXh0cmVnaW9uOjUzNmE0NmFhZTg0YzRiMGQ4Mzk1OTQ3Yjk4MTYzMTM2XzYwNDczMTM5NTM3NjY_4aace0b1-a695-40ee-a69c-857cee494592"
      unitRef="number">0.36</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ia2221582b85d426da1d4d1ba0d12b6b9_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzQvZnJhZzo1MzZhNDZhYWU4NGM0YjBkODM5NTk0N2I5ODE2MzEzNi90ZXh0cmVnaW9uOjUzNmE0NmFhZTg0YzRiMGQ4Mzk1OTQ3Yjk4MTYzMTM2XzU0OTc1NTgxMzk5MDc_a6f6cc91-9e67-474a-9138-5d00d17d0848"
      unitRef="number">0.34</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ic16a1d84dd0647ee99f4ffba1bea56a3_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzQvZnJhZzo1MzZhNDZhYWU4NGM0YjBkODM5NTk0N2I5ODE2MzEzNi90ZXh0cmVnaW9uOjUzNmE0NmFhZTg0YzRiMGQ4Mzk1OTQ3Yjk4MTYzMTM2XzYwNDczMTM5NTM3Nzg_36681e11-5a8e-4d84-8048-bc7dfddd822f"
      unitRef="number">0.14</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i4a3ac4ad633841319830a84a406f5c49_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzQvZnJhZzo1MzZhNDZhYWU4NGM0YjBkODM5NTk0N2I5ODE2MzEzNi90ZXh0cmVnaW9uOjUzNmE0NmFhZTg0YzRiMGQ4Mzk1OTQ3Yjk4MTYzMTM2XzYwNDczMTM5NTM3ODI_14e73b0b-3952-47ce-a84c-8f98dd8e2624"
      unitRef="number">0.11</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ie221d5843c95488b8c86ba42cdda1bf2_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzQvZnJhZzo1MzZhNDZhYWU4NGM0YjBkODM5NTk0N2I5ODE2MzEzNi90ZXh0cmVnaW9uOjUzNmE0NmFhZTg0YzRiMGQ4Mzk1OTQ3Yjk4MTYzMTM2XzY3Mw_af06e674-a39a-4498-af01-5b223302aad9"
      unitRef="number">0.29</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i28dfcf6660b6402cad55210ca2580b60_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzQvZnJhZzo1MzZhNDZhYWU4NGM0YjBkODM5NTk0N2I5ODE2MzEzNi90ZXh0cmVnaW9uOjUzNmE0NmFhZTg0YzRiMGQ4Mzk1OTQ3Yjk4MTYzMTM2XzU0OTc1NTgxMzk3NDY_839cd60c-1fa2-4414-a5e6-9558f9fa8656"
      unitRef="number">0.21</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i7183ec5f3e8b4c3f83d7d4261d92225b_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzQvZnJhZzo1MzZhNDZhYWU4NGM0YjBkODM5NTk0N2I5ODE2MzEzNi90ZXh0cmVnaW9uOjUzNmE0NmFhZTg0YzRiMGQ4Mzk1OTQ3Yjk4MTYzMTM2XzU0OTc1NTgxMzk3Mzg_a046a83f-4168-4d24-b537-a906bd4d9064"
      unitRef="number">0.12</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i5195c007a39f4d9d8fab31855b4e0f37_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzQvZnJhZzo1MzZhNDZhYWU4NGM0YjBkODM5NTk0N2I5ODE2MzEzNi90ZXh0cmVnaW9uOjUzNmE0NmFhZTg0YzRiMGQ4Mzk1OTQ3Yjk4MTYzMTM2XzYwNDczMTM5NTM4NzU_eb4442c3-45f4-41e7-8cb1-ad6abba1f64e"
      unitRef="number">0.19</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90ZXh0cmVnaW9uOjk2Yzg2MDFmYmRjNDRiMWFhMTE1YjFiODBmNDQ0ZmI3XzMyNDQ_83ace8ad-c41c-448d-82e2-9c220131e924">NET INCOME (LOSS) PER SHARE&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic net income (loss) per share is computed by dividing net income (loss) by the weighted average number of shares of common stock outstanding during the period. Diluted net income (loss) per share is computed in a similar manner, but it also includes the effect of potential common shares outstanding during the period, when dilutive. Potential common shares include Stock Options, RSUs, PSUs, shares to be purchased under the Company&#x2019;s ESPP, the Notes due 2023, the Notes due 2024, Warrants issued in conjunction with the Notes due 2024, and from May 20, 2020 to the end of the reporting period, the Notes due 2025 and Warrants issued in conjunction with the Notes due 2025. See Note 11. &#x201c;Debt&#x201d; for additional information.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The dilutive effect of potentially dilutive common shares is reflected in diluted earnings per share by application of the treasury stock method for stock options, RSUs, PSUs, Notes due 2024, warrants issued in conjunction with the Notes due 2024, Notes due 2025, warrants issued in conjunction with the Notes due 2025 and shares to be purchased under the ESPP, and by application of the if-converted method for the Notes due 2023. To the extent these potential common shares are antidilutive, they are excluded from the calculation of diluted net income (loss) per share.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the computation of basic and diluted net income (loss) per share for the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:57.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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.330%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands, except per share data)&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:9pt;font-weight:700;line-height:100%"&gt;Numerator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income (loss)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;133,995&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;161,148&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(11,627)&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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Notes due 2023 interest and financing costs, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;177&#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:9pt;font-weight:400;line-height:100%"&gt;1,088&#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:9pt;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;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:9pt;font-weight:400;line-height:100%"&gt;Adjusted net income (loss)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;134,172&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;162,236&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;(11,627)&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 style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #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:3pt double #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:3pt double #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:9pt;font-weight:700;line-height:100%"&gt;Denominator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares used in basic per share amounts:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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 2px 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average common shares outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;125,561&#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:9pt;font-weight:400;line-height:100%"&gt;116,713&#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:9pt;font-weight:400;line-height:100%"&gt;99,619&#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 style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #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:3pt double #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:3pt double #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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares used in diluted per share amounts:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average common shares outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;125,561&#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:9pt;font-weight:400;line-height:100%"&gt;116,713&#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:9pt;font-weight:400;line-height:100%"&gt;99,619&#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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Effect of dilutive securities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 15.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Employee stock-based awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;6,997&#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:9pt;font-weight:400;line-height:100%"&gt;8,964&#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:9pt;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;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 15.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Warrants (issued in conjunction with Notes due 2024)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;4,011&#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:9pt;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 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:9pt;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 15.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Notes due 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;4,449&#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:9pt;font-weight:400;line-height:100%"&gt;451&#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:9pt;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;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 15.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Notes due 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;900&#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:9pt;font-weight:400;line-height:100%"&gt;5,516&#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:9pt;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 16pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average common shares outstanding for diluted calculation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;141,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 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:9pt;font-weight:400;line-height:100%"&gt;131,644&#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:9pt;font-weight:400;line-height:100%"&gt;99,619&#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 style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&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:0 1pt"/&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: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:9pt;font-weight:700;line-height:100%"&gt;Basic and diluted net income (loss) per share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income (loss) per share, basic&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.07&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.38&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.12)&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:9pt;font-weight:400;line-height:100%"&gt;Net income (loss) per share, diluted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.95&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.23&#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;border-bottom:3pt double #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.12)&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:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following outstanding shares of common stock equivalents were excluded from the calculation of the diluted net income (loss) per share attributable to common stockholders because their effect would have been antidilutive.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:59.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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.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.330%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Employee stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;7&#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:9pt;font-weight:400;line-height:100%"&gt;27&#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:9pt;font-weight:400;line-height:100%"&gt;7,710&#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:9pt;font-weight:400;line-height:100%"&gt;RSUs and PSUs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;36&#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:9pt;font-weight:400;line-height:100%"&gt;158&#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:9pt;font-weight:400;line-height:100%"&gt;5,273&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Warrants (issued in conjunction with Notes due 2024)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;300&#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:9pt;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;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Warrants (issued in conjunction with Notes due 2025)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;1,254&#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:9pt;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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;Notes due 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;197&#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:9pt;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="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;Notes due 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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 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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;11,701&#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 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%"&gt;1,494&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%"&gt;485&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%"&gt;24,684&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Diluted earnings per share for the year ended December&#160;31, 2020 includes the dilutive effect of stock options, RSUs, PSUs, shares to be purchased under the ESPP, the Notes due 2023, the Notes due 2024, and warrants issued in conjunction with the Notes due 2024. Certain common stock issuable under stock options, RSUs, PSUs, Notes due 2025 and warrants issued in conjunction with the Notes due 2025 have been omitted from the diluted net income per share calculation because including such shares would have been antidilutive.&lt;/span&gt;&lt;/div&gt;Diluted earnings per share for the year ended December&#160;31, 2019 includes the dilutive effect of stock options, RSUs, PSUs, shares to be purchased under the ESPP, the Notes due 2023 and Notes due 2024. Certain common stock issuable under stock options, RSUs, PSUs and warrants issued in conjunction with the Notes due 2024 have been omitted from the diluted net income per share calculation because including such shares would have been antidilutive.Since the Company has the intent and ability to settle the aggregate principal amount of the Notes due 2024 and Notes due 2025 in cash and any excess in shares of the Company&#x2019;s common stock, the Company uses the treasury stock method for calculating any potential dilutive effect of the conversion spread on diluted net income per share, if applicable. In order to compute the dilutive effect, the number of shares included in the denominator of diluted net income per share is determined by dividing the conversion spread value of the &#x201c;in-the-money&#x201d; Notes due 2024 and Notes due 2025 by the Company&#x2019;s average share price during the period and including the resulting share amount in the diluted net income per share denominator. The conversion spread will have a dilutive impact on net income per share of common stock when the average market price of the Company&#x2019;s common stock for a given period exceeds the conversion price of&#160;$20.50&#160;per share and $81.54 per share for the Notes due 2024 and Notes due 2025, respectively.</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:EarningsPerSharePolicyTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90ZXh0cmVnaW9uOjk2Yzg2MDFmYmRjNDRiMWFhMTE1YjFiODBmNDQ0ZmI3XzMyMzY_24414896-2171-48ff-82b4-e5ca65607c66">&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic net income (loss) per share is computed by dividing net income (loss) by the weighted average number of shares of common stock outstanding during the period. Diluted net income (loss) per share is computed in a similar manner, but it also includes the effect of potential common shares outstanding during the period, when dilutive. Potential common shares include Stock Options, RSUs, PSUs, shares to be purchased under the Company&#x2019;s ESPP, the Notes due 2023, the Notes due 2024, Warrants issued in conjunction with the Notes due 2024, and from May 20, 2020 to the end of the reporting period, the Notes due 2025 and Warrants issued in conjunction with the Notes due 2025. See Note 11. &#x201c;Debt&#x201d; for additional information.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The dilutive effect of potentially dilutive common shares is reflected in diluted earnings per share by application of the treasury stock method for stock options, RSUs, PSUs, Notes due 2024, warrants issued in conjunction with the Notes due 2024, Notes due 2025, warrants issued in conjunction with the Notes due 2025 and shares to be purchased under the ESPP, and by application of the if-converted method for the Notes due 2023. To the extent these potential common shares are antidilutive, they are excluded from the calculation of diluted net income (loss) per share.&lt;/span&gt;&lt;/div&gt;</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90ZXh0cmVnaW9uOjk2Yzg2MDFmYmRjNDRiMWFhMTE1YjFiODBmNDQ0ZmI3XzMyMzM_7c37fc1b-a2a6-4d67-a6e9-6f395612446d">&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the computation of basic and diluted net income (loss) per share for the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:57.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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.330%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands, except per share data)&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:9pt;font-weight:700;line-height:100%"&gt;Numerator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income (loss)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;133,995&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;161,148&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(11,627)&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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Notes due 2023 interest and financing costs, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;177&#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:9pt;font-weight:400;line-height:100%"&gt;1,088&#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:9pt;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;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:9pt;font-weight:400;line-height:100%"&gt;Adjusted net income (loss)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;134,172&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;162,236&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;(11,627)&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 style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #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:3pt double #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:3pt double #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:9pt;font-weight:700;line-height:100%"&gt;Denominator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares used in basic per share amounts:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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 2px 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average common shares outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;125,561&#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:9pt;font-weight:400;line-height:100%"&gt;116,713&#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:9pt;font-weight:400;line-height:100%"&gt;99,619&#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 style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #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:3pt double #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:3pt double #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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares used in diluted per share amounts:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average common shares outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;125,561&#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:9pt;font-weight:400;line-height:100%"&gt;116,713&#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:9pt;font-weight:400;line-height:100%"&gt;99,619&#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 10.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Effect of dilutive securities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 15.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Employee stock-based awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;6,997&#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:9pt;font-weight:400;line-height:100%"&gt;8,964&#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:9pt;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;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 15.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Warrants (issued in conjunction with Notes due 2024)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;4,011&#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:9pt;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 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:9pt;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 15.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Notes due 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;4,449&#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:9pt;font-weight:400;line-height:100%"&gt;451&#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:9pt;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;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 15.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Notes due 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;900&#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:9pt;font-weight:400;line-height:100%"&gt;5,516&#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:9pt;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 16pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average common shares outstanding for diluted calculation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;141,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 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:9pt;font-weight:400;line-height:100%"&gt;131,644&#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:9pt;font-weight:400;line-height:100%"&gt;99,619&#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 style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&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:0 1pt"/&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: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:9pt;font-weight:700;line-height:100%"&gt;Basic and diluted net income (loss) per share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income (loss) per share, basic&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.07&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.38&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.12)&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:9pt;font-weight:400;line-height:100%"&gt;Net income (loss) per share, diluted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;0.95&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1.23&#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;border-bottom:3pt double #000000;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.12)&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:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzQtNS0xLTEtMA_7152a3d8-d754-4b00-affa-b961c17af334"
      unitRef="usd">133995000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzQtNy0xLTEtMA_555e69a9-21b1-4f95-a6fb-20a00e7f4713"
      unitRef="usd">161148000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzQtOS0xLTEtMA_2b805b70-f41c-4e7e-b5e0-23d1f6bc1fd8"
      unitRef="usd">-11627000</us-gaap:NetIncomeLoss>
    <us-gaap:InterestOnConvertibleDebtNetOfTax
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzUtNS0xLTEtMA_083c5ea4-105a-4890-b86c-a1a9d5e9d55c"
      unitRef="usd">177000</us-gaap:InterestOnConvertibleDebtNetOfTax>
    <us-gaap:InterestOnConvertibleDebtNetOfTax
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzUtNy0xLTEtMA_1380bf68-4b50-46dd-88f0-deee4701f8e3"
      unitRef="usd">1088000</us-gaap:InterestOnConvertibleDebtNetOfTax>
    <us-gaap:InterestOnConvertibleDebtNetOfTax
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzUtOS0xLTEtMA_aaa00091-52f0-4eb0-b66c-42908d4a1aa6"
      unitRef="usd">0</us-gaap:InterestOnConvertibleDebtNetOfTax>
    <us-gaap:NetIncomeLossAttributableToParentDiluted
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzYtNS0xLTEtMA_95556ee4-126d-41d9-85eb-82bd067de1d4"
      unitRef="usd">134172000</us-gaap:NetIncomeLossAttributableToParentDiluted>
    <us-gaap:NetIncomeLossAttributableToParentDiluted
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzYtNy0xLTEtMA_11a9da53-a83b-4255-8b57-ca6a703e34a1"
      unitRef="usd">162236000</us-gaap:NetIncomeLossAttributableToParentDiluted>
    <us-gaap:NetIncomeLossAttributableToParentDiluted
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzYtOS0xLTEtMA_2e1ba7b9-ea55-4264-91f8-3e500f9f372c"
      unitRef="usd">-11627000</us-gaap:NetIncomeLossAttributableToParentDiluted>
    <us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzEwLTUtMS0xLTA_debd16c6-9660-436d-8f44-8843da20120d"
      unitRef="shares">125561000</us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted>
    <us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzEwLTctMS0xLTA_41591b22-18cb-4a0c-8b12-fe3f89a2fb6c"
      unitRef="shares">116713000</us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted>
    <us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzEwLTktMS0xLTA_c625ddcb-4821-44f3-8125-0c4df9e8b993"
      unitRef="shares">99619000</us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted>
    <us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzEwLTktMS0xLTA_cedb893c-eafa-4657-85b3-528757268c24"
      unitRef="shares">99619000</us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted>
    <us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzEzLTUtMS0xLTA_debd16c6-9660-436d-8f44-8843da20120d"
      unitRef="shares">125561000</us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted>
    <us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzEzLTctMS0xLTA_41591b22-18cb-4a0c-8b12-fe3f89a2fb6c"
      unitRef="shares">116713000</us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted>
    <us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzEzLTktMS0xLTA_c625ddcb-4821-44f3-8125-0c4df9e8b993"
      unitRef="shares">99619000</us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted>
    <us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzEzLTktMS0xLTA_cedb893c-eafa-4657-85b3-528757268c24"
      unitRef="shares">99619000</us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE1LTUtMS0xLTA_a1301ef2-fe79-4894-929f-e4b9f5dfe39a"
      unitRef="shares">6997000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE1LTctMS0xLTA_ea54b2ad-74df-4856-99be-8faa34a10efc"
      unitRef="shares">8964000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE1LTktMS0xLTA_1ff9ed64-3193-4d90-8776-33ee22830941"
      unitRef="shares">0</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToCallOptionsAndWarrants
      contextRef="id59ea6d1ab7849aba031da54569bf40d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE2LTUtMS0xLTA_8c5d04ec-2531-4dc4-8c92-dbc11cfd5ab3"
      unitRef="shares">4011000</us-gaap:IncrementalCommonSharesAttributableToCallOptionsAndWarrants>
    <us-gaap:IncrementalCommonSharesAttributableToCallOptionsAndWarrants
      contextRef="ic2bca91224874214bdd63056fd92036f_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE2LTctMS0xLTA_e24ace90-20c0-4e9d-b514-da7096973fe0"
      unitRef="shares">0</us-gaap:IncrementalCommonSharesAttributableToCallOptionsAndWarrants>
    <us-gaap:IncrementalCommonSharesAttributableToCallOptionsAndWarrants
      contextRef="ifad06bdb0f404ecbaf17dade497a5f5b_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE2LTktMS0xLTA_20e74a8c-0c05-4c87-b612-f7746f31c8b0"
      unitRef="shares">0</us-gaap:IncrementalCommonSharesAttributableToCallOptionsAndWarrants>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities
      contextRef="ic45a4981fa4b4635b9c8196a1077c18e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE3LTUtMS0xLTA_eb37cdd2-65f2-4a63-8a27-11093e5da19e"
      unitRef="shares">4449000</us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities
      contextRef="i06d55e970b3143e8b47cef5cf183db0b_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE3LTctMS0xLTA_6ccc8eab-d065-41ec-9c4d-18fcd3d0040e"
      unitRef="shares">451000</us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities
      contextRef="i1f20972b53464d9aa444e30092919b85_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE5LTktMS0xLTcyMDI_c84d5e79-f95b-4eb0-9368-c2d52fa12142"
      unitRef="shares">0</us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities
      contextRef="id5855f2bb3474f0f900f9e4bf6f7b386_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE4LTUtMS0xLTA_b5eed245-6063-4423-902b-c3d1ff66c7d7"
      unitRef="shares">900000</us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities
      contextRef="ic6801e0858d04e94a69208a8fcf8d8ae_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE4LTctMS0xLTA_af9260e6-5ada-4d55-9cf3-885c7847381a"
      unitRef="shares">5516000</us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities
      contextRef="ic723d69108de438799f357cc6dadebce_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE4LTktMS0xLTA_f68adb3c-dabb-4264-bd65-0fa9ceb9c664"
      unitRef="shares">0</us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE5LTUtMS0xLTA_69b1257e-a74a-441c-89e4-bac65744b7af"
      unitRef="shares">141918000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE5LTctMS0xLTA_b193111d-2770-4ca7-b38e-bf21e0348aed"
      unitRef="shares">131644000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzE5LTktMS0xLTA_2c8350c6-208d-4be8-b563-5482249378c3"
      unitRef="shares">99619000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzIyLTUtMS0xLTA_628c0670-be67-41b4-8079-db0f8810a757"
      unitRef="usdPerShare">1.07</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzIyLTctMS0xLTA_adea3a80-9d7a-47b8-9376-086a12a0dea1"
      unitRef="usdPerShare">1.38</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzIyLTktMS0xLTA_c0ca8209-c6a9-46ba-a5b2-5b90ad1f2a1c"
      unitRef="usdPerShare">-0.12</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzIzLTUtMS0xLTA_17220531-f05d-4409-b1de-64a1aebab555"
      unitRef="usdPerShare">0.95</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzIzLTctMS0xLTA_e0b5fa62-3daf-4cff-b2ef-a5d2ea706a3b"
      unitRef="usdPerShare">1.23</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTpiNjVmN2I1MmQ3OTU0MzdlYTYzYWU1YTY5YzYwM2VjZC90YWJsZXJhbmdlOmI2NWY3YjUyZDc5NTQzN2VhNjNhZTVhNjljNjAzZWNkXzIzLTktMS0xLTA_054c091f-1d55-49b8-a377-3ae05b43b720"
      unitRef="usdPerShare">-0.12</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90ZXh0cmVnaW9uOjk2Yzg2MDFmYmRjNDRiMWFhMTE1YjFiODBmNDQ0ZmI3XzMyMzQ_d6cf0d49-15fe-499c-9cf8-81b15f278b22">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following outstanding shares of common stock equivalents were excluded from the calculation of the diluted net income (loss) per share attributable to common stockholders because their effect would have been antidilutive.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&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:59.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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.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.330%"/&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;font-weight:700;line-height:100%"&gt;Years 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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:8pt;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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2019&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-bottom:1pt solid #000000;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:8pt;font-weight:700;line-height:100%"&gt;2018&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="15" 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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Employee stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;7&#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:9pt;font-weight:400;line-height:100%"&gt;27&#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:9pt;font-weight:400;line-height:100%"&gt;7,710&#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:9pt;font-weight:400;line-height:100%"&gt;RSUs and PSUs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;36&#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:9pt;font-weight:400;line-height:100%"&gt;158&#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:9pt;font-weight:400;line-height:100%"&gt;5,273&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Warrants (issued in conjunction with Notes due 2024)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;300&#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:9pt;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;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;div style="padding-left:9pt;text-indent:-9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Warrants (issued in conjunction with Notes due 2025)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;1,254&#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:9pt;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 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;Notes due 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;197&#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:9pt;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="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;Notes due 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;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 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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;11,701&#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 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%"&gt;1,494&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%"&gt;485&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%"&gt;24,684&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="if0fa606dc8e94a0a880d8dbc93d661b7_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzMtNS0xLTEtMA_5c075012-ef13-48eb-b618-cce5b838a69b"
      unitRef="shares">7000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i50036f316c7b4b748bdf5844016588a4_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzMtNy0xLTEtMA_39e5a937-7bb7-4811-84a7-3f2558af8501"
      unitRef="shares">27000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ibd714ff6a5ea43528ba42e579f509a15_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzMtOS0xLTEtMA_206446b4-8b2d-49e0-bde4-b9fa868838bf"
      unitRef="shares">7710000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="id45a1489344b4570ba4d23f02db4c12d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzQtNS0xLTEtMA_83eeff47-a8c7-4c63-bd2b-bf5f6b954c81"
      unitRef="shares">36000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i3198bb2200894b04b5d3d8a5dbc09ecf_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzQtNy0xLTEtMA_628db02e-8954-47f3-88c5-5dc1ec62dabb"
      unitRef="shares">158000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ie5486b912e5d4c8a9faa3ee1841bba3f_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzQtOS0xLTEtMA_c32f9d06-73b9-4058-ad8f-9af89f6949d9"
      unitRef="shares">5273000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i1f95af5c5ed34cf8980d537dd6bddebd_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzgtNS0xLTEtMA_bbb33608-47d5-4048-a488-27c1f7a55031"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i89402c690c2148fba9fdd7d5797e1fff_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzgtNy0xLTEtMA_11176686-a083-4431-a3d6-094d99337ae3"
      unitRef="shares">300000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i6c88d341d9ba491f8aa0eac06a3c9fdc_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzgtOS0xLTEtMA_ebb55bb0-7d7a-495a-bb65-0373f8fc7f47"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i26215d0ec16847f3bc371ea61cece29d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzExLTUtMS0xLTA_63f9e2f2-b9d9-414c-a3be-1a503bc71669"
      unitRef="shares">1254000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="iacdaa75a666d48ae850df088d9866f11_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzExLTctMS0xLTA_b14d5996-58c2-4f29-878d-fdee58ce196f"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i9d62d60a59cb4a729dad45c52d1839c2_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzExLTktMS0xLTI0OTE_9d915c93-d484-428f-9c04-db94d1657e8f"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i0534278fed064070bedb4be765002104_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzEyLTUtMS0xLTA_1d3b2c88-e537-4cc4-aac9-1923ad24c5ce"
      unitRef="shares">197000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i0c62bb842c234ed6a09250121aa8f1b7_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzEyLTctMS0xLTA_75020cc2-e32f-4257-b1a8-e2ecee6a3e68"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i5b4d899181d040708f2ede6f0addb810_D20180101-20181231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzEyLTktMS0xLTcyMTk_6a21fbae-4820-48b3-b9dd-9cfbbc4dee9c"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i7fe49d0789e34fd8bef466b95fd8fceb_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzEzLTUtMS0xLTA_8ac76f45-4ed7-4492-884e-a8c943adddbb"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i045d08e1a9184a5b8008fa13b5569b86_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzEzLTctMS0xLTA_24cf8a7b-65a3-43bb-966e-f874259ea15d"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="icd7065478925411fbf86cbb7daf11a0b_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzEzLTktMS0xLTM1NDM_d4b92f72-8162-44aa-b995-cf45ba0981ea"
      unitRef="shares">11701000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzE0LTUtMS0xLTA_86268d52-82bb-4f84-8b4d-5705b6001faf"
      unitRef="shares">1494000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i3241070f03374e6f8384fee76e6feb6a_D20190101-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzE0LTctMS0xLTA_9b430f27-48b5-4344-9071-d3a77ff6977b"
      unitRef="shares">485000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i9f7597567e714a50ab6ce212e5de6c1e_D20180101-20181231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90YWJsZTo4N2MzZDU1OWI2Zjc0MmVhYTExYmMwM2IyZGE3ZjgwMi90YWJsZXJhbmdlOjg3YzNkNTU5YjZmNzQyZWFhMTFiYzAzYjJkYTdmODAyXzE0LTktMS0xLTA_8c1b71e3-fab8-4680-8244-0ef15fa8fa35"
      unitRef="shares">24684000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="ib0ac1f7e04a74a26a4c3f507ba0e8b88_I20190605"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90ZXh0cmVnaW9uOjk2Yzg2MDFmYmRjNDRiMWFhMTE1YjFiODBmNDQ0ZmI3XzMxNTc_104d1741-e3f0-48ed-9244-1d8c23fe63a7"
      unitRef="usdPerShare">20.50</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i390f66ad2b7c48eab6231bdeb063ec1d_I20200309"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yNzcvZnJhZzo5NmM4NjAxZmJkYzQ0YjFhYTExNWIxYjgwZjQ0NGZiNy90ZXh0cmVnaW9uOjk2Yzg2MDFmYmRjNDRiMWFhMTE1YjFiODBmNDQ0ZmI3XzMxNzQ_5c3c17eb-213f-4e32-9a12-b92c12dc4b9b"
      unitRef="usdPerShare">81.54</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90ZXh0cmVnaW9uOjc3ZTU4MTE3ZTYxNDQyYzNiYzBlYmU4Mzc2ZDUyOTI0Xzg3OTYwOTMwMjMwMjg_2e2740f2-72c4-4b83-b05f-b53dfb0d9fc6">SEGMENT AND GEOGRAPHIC INFORMATION&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 chief operating decision maker is the Chief Executive Officer. The Chief Executive Officer reviews financial information presented on a consolidated basis. The Company has one business activity, which entails the design, development, manufacture and sale of solutions for the solar photovoltaic industry. There are no segment managers who are held accountable for operations, operating results or plans for levels or components below the consolidated unit level. Accordingly, management has determined that the Company has a single operating and reportable segment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;See Note 3. &#x201c;Revenue Recognition for the table presenting net revenues (based on the destination of shipments). The following table presents long-lived assets by geographic region as of and for the periods presented (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Long-Lived Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:70.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;December&#160;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 #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:100%"&gt;United States&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;19,870&#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;16,754&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;China&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:9pt;font-weight:400;line-height:100%"&gt;9,948&#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;4,635&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;Mexico&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:9pt;font-weight:400;line-height:100%"&gt;4,808&#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;3,510&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;India&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:9pt;font-weight:400;line-height:100%"&gt;4,371&#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;1,315&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;New Zealand&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:9pt;font-weight:400;line-height:100%"&gt;3,837&#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;2,638&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;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:9pt;font-weight:400;line-height:100%"&gt;151&#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;84&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 13pt;text-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="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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;42,985&#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 #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="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:9pt;font-weight:400;line-height:100%"&gt;28,936&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90ZXh0cmVnaW9uOjc3ZTU4MTE3ZTYxNDQyYzNiYzBlYmU4Mzc2ZDUyOTI0Xzg3OTYwOTMwMjMwMjk_af4aa710-84db-4721-9d2a-7aead7ca5eaf">The following table presents long-lived assets by geographic region as of and for the periods presented (in thousands):&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Long-Lived Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:70.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.935%"/&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.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;December&#160;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 #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:100%"&gt;United States&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;19,870&#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;16,754&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;China&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:9pt;font-weight:400;line-height:100%"&gt;9,948&#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;4,635&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;Mexico&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:9pt;font-weight:400;line-height:100%"&gt;4,808&#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;3,510&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;India&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:9pt;font-weight:400;line-height:100%"&gt;4,371&#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;1,315&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;New Zealand&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:9pt;font-weight:400;line-height:100%"&gt;3,837&#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;2,638&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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;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:9pt;font-weight:400;line-height:100%"&gt;151&#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;84&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 13pt;text-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="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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;42,985&#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 #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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="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:9pt;font-weight:400;line-height:100%"&gt;28,936&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock>
    <us-gaap:NoncurrentAssets
      contextRef="i9ddcf816af274acf92e17e3edd959047_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzMtMS0xLTEtMA_e923ff88-250d-4a13-a9fc-95c9b9621ba1"
      unitRef="usd">19870000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i0c1988b971f54c8ba4bd4a70602357a3_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzMtMy0xLTEtMA_806fc91d-393b-41a5-94eb-1148876fa442"
      unitRef="usd">16754000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i63529bdaf60547819bf7018011d9c392_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzQtMS0xLTEtMA_889efcdc-30e9-40a0-b13b-f4caeeddc77d"
      unitRef="usd">9948000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i5a06b0a9abb54dd7ac9515bd11e7d7f7_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzQtMy0xLTEtMA_12efbeac-3797-4bc1-98e1-83587cb8cc24"
      unitRef="usd">4635000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i08238168f508485e8f19558aa5cfba6f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzUtMS0xLTEtMA_54655f0f-f85e-4e73-a855-14f0944f604c"
      unitRef="usd">4808000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i9017543b50444b25b9f221872371cc0f_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzUtMy0xLTEtMA_836b97d0-9b51-4235-834b-01c606c09755"
      unitRef="usd">3510000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i4bbb38f702db42139f0c2308d65a4578_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzYtMS0xLTEtMA_fe993fff-70ba-4235-8e7f-f24d9c2b3697"
      unitRef="usd">4371000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ib25d48073d884af7b17556d5c31ca3bb_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzYtMy0xLTEtMA_002b3110-06fe-467c-b0df-b79133e754e9"
      unitRef="usd">1315000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="ib440788309334f34ac5de2ab75e123a0_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzctMS0xLTEtMA_3cfb8532-0712-4b3b-9460-a5d0e6bdff41"
      unitRef="usd">3837000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i788450a844b0495a8de0b0ec8ecf9635_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzctMy0xLTEtMA_71a0a668-0bb7-4d51-b51b-b88a02eba8c6"
      unitRef="usd">2638000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i93a5784ffdd54b49b8d079e07b41f192_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzgtMS0xLTEtOTE5Mw_300393d3-f4a0-45ce-8a20-376e5e9c3719"
      unitRef="usd">151000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i9c7e38efd86e445895ee210d4723863d_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzgtMy0xLTEtOTIwMw_baa61ae4-b025-4786-a8c2-73c0c05978b4"
      unitRef="usd">84000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i149db69d12c24da2a6ed1cbf1fc2dd08_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzktMS0xLTEtOTE5Mw_d483538e-a8a6-4381-99d5-adf5ad84c04d"
      unitRef="usd">42985000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i4c1b6e69d8114e6887c4b16fbb852f70_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODMvZnJhZzo3N2U1ODExN2U2MTQ0MmMzYmMwZWJlODM3NmQ1MjkyNC90YWJsZTowYjYzODNmNmI3MTM0Y2YxOGU4MWQ0ZGNjZWFiNDYzMC90YWJsZXJhbmdlOjBiNjM4M2Y2YjcxMzRjZjE4ZTgxZDRkY2NlYWI0NjMwXzktMy0xLTEtOTIwMw_ef3703cb-2d2e-4d73-8b7b-73902c9469ac"
      unitRef="usd">28936000</us-gaap:NoncurrentAssets>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODkvZnJhZzpjNzI1ZjJmMmUxZjA0YzkxOGExNzZjZGM3YTk3NThlYy90ZXh0cmVnaW9uOmM3MjVmMmYyZTFmMDRjOTE4YTE3NmNkYzdhOTc1OGVjXzM4NQ_8f7aabc8-3c06-43f8-a03e-28607b14175b">RELATED PARTYIn 2018, a member of the Company&#x2019;s board of directors and one of its principal stockholders, Thurman John Rodgers, purchased $5.0&#160;million aggregate principal amount of the Notes due 2023 in a concurrent private placement. As of both December&#160;31, 2020 and December&#160;31, 2019, $5.0&#160;million aggregate principal amount of the Notes due 2023 were outstanding. See Note 11. &#x201c;Debt&#x201d; for additional information related to this purchase.&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company sells products to &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;SunPower&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; under the August 2018 MSA. As of &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, SunPower via its wholly owned subsidiary, held &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;6.5&#160;million&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; shares of the Company&#x2019;s common stock. Revenue recognized under the MSA for the year ended &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; was &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$70.9&#160;million&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, net of amortization of the customer relationship intangible asset &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(see Note&#160;6. &#x201c;Goodwill and Intangible Assets&#x201d;)&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;. As of &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, the Company had accounts receivable of &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$15.9&#160;million&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; from SunPower. As of &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, the Company received &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$5.2 million&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; as a safe harbor prepayment from SunPower in the fourth quarter of 2019 for product delivered in the first quarter of 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;December&#160;31, 2020, SunPower via its wholly owned subsidiary held 3.5&#160;million shares of the Company&#x2019;s common stock which is less than 5% of the Company&#x2019;s common stock outstanding and is no longer a considered a related party.&lt;/span&gt;&lt;/div&gt;</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i465f43bf50354e1c8924232ffd004d0c_I20181231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODkvZnJhZzpjNzI1ZjJmMmUxZjA0YzkxOGExNzZjZGM3YTk3NThlYy90ZXh0cmVnaW9uOmM3MjVmMmYyZTFmMDRjOTE4YTE3NmNkYzdhOTc1OGVjXzEzNQ_4c8b483d-4501-4d7c-870b-588351381f55"
      unitRef="usd">5000000.0</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i6121ef473e0b4f2cbedaadc6d78b6194_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODkvZnJhZzpjNzI1ZjJmMmUxZjA0YzkxOGExNzZjZGM3YTk3NThlYy90ZXh0cmVnaW9uOmM3MjVmMmYyZTFmMDRjOTE4YTE3NmNkYzdhOTc1OGVjXzI0NA_0a6a0a88-a0e9-4fb1-9992-f94295a515d7"
      unitRef="usd">5000000.0</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i7fb5441fa44648ea86deb663383d1f10_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODkvZnJhZzpjNzI1ZjJmMmUxZjA0YzkxOGExNzZjZGM3YTk3NThlYy90ZXh0cmVnaW9uOmM3MjVmMmYyZTFmMDRjOTE4YTE3NmNkYzdhOTc1OGVjXzI0NA_0ae65ea3-156d-47f7-a92a-ff21e25614dd"
      unitRef="usd">5000000.0</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued
      contextRef="ic500f82b014a42d2b48875928ab14abd_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODkvZnJhZzpjNzI1ZjJmMmUxZjA0YzkxOGExNzZjZGM3YTk3NThlYy90ZXh0cmVnaW9uOmM3MjVmMmYyZTFmMDRjOTE4YTE3NmNkYzdhOTc1OGVjXzU0OTc1NTgxNDEwODc_ea58dbe9-d592-426d-b331-2d2fa92bd53f"
      unitRef="shares">6500000</us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued>
    <us-gaap:RevenueFromRelatedParties
      contextRef="ic500f82b014a42d2b48875928ab14abd_D20190101-20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODkvZnJhZzpjNzI1ZjJmMmUxZjA0YzkxOGExNzZjZGM3YTk3NThlYy90ZXh0cmVnaW9uOmM3MjVmMmYyZTFmMDRjOTE4YTE3NmNkYzdhOTc1OGVjXzU0OTc1NTgxNDEyODc_cd7cd219-dcf1-4570-8eae-73bd5eaa9792"
      unitRef="usd">70900000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:AccountsReceivableRelatedParties
      contextRef="ic336ad510bf146e0b07ba538d4c58c57_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODkvZnJhZzpjNzI1ZjJmMmUxZjA0YzkxOGExNzZjZGM3YTk3NThlYy90ZXh0cmVnaW9uOmM3MjVmMmYyZTFmMDRjOTE4YTE3NmNkYzdhOTc1OGVjXzU0OTc1NTgxNDEyODM_743f8aba-1c0c-4890-8bf9-3abecf6b08ad"
      unitRef="usd">15900000</us-gaap:AccountsReceivableRelatedParties>
    <enph:ContractWithCustomerIncreaseDueToSafeHarborPrepayments
      contextRef="ic336ad510bf146e0b07ba538d4c58c57_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODkvZnJhZzpjNzI1ZjJmMmUxZjA0YzkxOGExNzZjZGM3YTk3NThlYy90ZXh0cmVnaW9uOmM3MjVmMmYyZTFmMDRjOTE4YTE3NmNkYzdhOTc1OGVjXzU0OTc1NTgxNDEyMzA_4c194ae3-8098-40a2-81cb-5f3e6e77eb49"
      unitRef="usd">5200000</enph:ContractWithCustomerIncreaseDueToSafeHarborPrepayments>
    <us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued
      contextRef="i9cbd9e085cbd4eb586381dded472c100_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yODkvZnJhZzpjNzI1ZjJmMmUxZjA0YzkxOGExNzZjZGM3YTk3NThlYy90ZXh0cmVnaW9uOmM3MjVmMmYyZTFmMDRjOTE4YTE3NmNkYzdhOTc1OGVjXzU0OTc1NTgxNDIwNTk_5162b7ac-ae58-462e-b435-4392d00dc5f5"
      unitRef="shares">3500000</us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1Xzg3OTYwOTMwMjc5MzU_8ef1f90c-b12a-4bd4-855f-4e03d1781ac9">ACQUISITION&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On August&#160;9, 2018, the Company completed its acquisition of SunPower&#x2019;s microinverter business pursuant to an APA by which the Company acquired certain assets and liabilities of SunPower relating to the research and development and manufacturing of microinverters. The acquisition was accounted for as a business combination and, accordingly, the total purchase price was allocated to the preliminary net tangible and intangible assets and liabilities based on their preliminary fair values on the acquisition date. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In conjunction with the APA, the Company entered into an MSA with SunPower. Pursuant to the terms of the MSA, the Company becomes the exclusive supplier of MLPEs for SunPower&#x2019;s residential business in the U.S. for a period of five years. The resulting customer relationship intangible is accounted for as a distinct transaction from the acquired business.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The acquisition date fair value of the consideration transferred was approximately $57.3&#160;million, which consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:85.449%"/&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.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash consideration&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;25,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Common stock issued&lt;/span&gt;&lt;/td&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57,319&#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:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&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 Company&#x2019;s 7.5&#160;million shares of common stock issued, valued at $32.3&#160;million, was determined based on the closing market price of the Company&#x2019;s common stock on the acquisition date, less a discount of 14% to 30% (depending on the year) for lack of marketability as the shares issued are subject to a restriction that limits their trade or transfer with a lock-up period of six months and restrictions on the number of shares that can be transferred by SunPower in each six-month period following the lock-up period. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&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 the preliminary estimated fair values of the assets acquired and liabilities assumed at the acquisition date (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;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:85.449%"/&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.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intangible assets&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;36,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21,119&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net assets acquired&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:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57,319&#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:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The excess of the consideration paid over the fair values assigned to the assets acquired and liabilities assumed represents the goodwill resulting from the acquisition. The $21.1&#160;million of goodwill recognized is attributable primarily to the benefits the Company expects to derive from enhanced scale and efficiency to better serve its markets. Goodwill is expected to be deductible over the next 15 years for income tax purposes.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair values assigned to tangible and identifiable intangible assets acquired are based on management&#x2019;s estimates and assumptions. The fair values of assets acquired are preliminary and may be subject to change within the measurement period as the fair value assessments are finalized.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table shows the fair value of the separately identifiable intangible assets at the time of acquisition and the period over which each intangible asset will be amortized:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;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:71.999%"/&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.622%"/&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: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:8pt;font-weight:700;line-height:100%"&gt;Preliminary Fair Value&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:8pt;font-weight:700;line-height:100%"&gt;Useful Life&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="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(Years)&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Developed technology&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Customer relationship&lt;/span&gt;&lt;/td&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;23,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9&lt;/span&gt;&lt;/td&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total identifiable intangible assets&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: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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;36,200&#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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The developed technology acquired is embedded in the microinverters that SunPower sells to its customers. The Company already has developed microinverter technology and the Company will supply its microinverters to SunPower through the term of the MSA. The Company does not intend to actively use the developed technology acquired from SunPower but does plan to hold the developed technology to prevent others from using it. Therefore, the Company will account for the developed technology as a defensive intangible asset. The Company expects to realize the benefits of the developed technology over the period of time in which the Company will supply microinverters to SunPower. The Company does expect changes in microinverter technology during the life of the customer relationship with SunPower and expects to benefit from preventing competitors&#x2019; access to the technology over a period of six years, therefore, the Company will amortize the value of the developed technology intangible asset over a period of six years. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The MSA was negotiated together with the APA and provides the Company with the exclusive right to supply SunPower with MLPEs for a period of five years, with options for renewals. The exclusivity arrangement extends throughout the term of the MSA, which comprises all of the expected cash flows from the customer relationship intangible asset, and was a condition to, and was an essential part of the acquisition of the microinverter business by the Company. As the fair value ascribed to the customer relationship intangible asset represents payments to a customer, the Company will amortize the value of the customer relationship intangible asset as a reduction to revenue using a pattern of economic benefit method over a useful life of nine years. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below shows estimated fair values of the assets acquired funded by cash and issuance of common stock at the acquisition date: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;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:45.829%"/&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.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.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.624%"/&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:8pt;font-weight:700;line-height:100%"&gt;Cash Purchase Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Issuance of Common Stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Total Consideration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;% of Total Consideration&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Developed technology and goodwill&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;15,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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19,219&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;34,219&#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:9pt;font-weight:400;line-height:100%"&gt;60&#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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;Customer relationship&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;13,100&#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:9pt;font-weight:400;line-height:100%"&gt;23,100&#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:9pt;font-weight:400;line-height:100%"&gt;40&#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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total consideration&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;25,000&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;32,319&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;57,319&#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 colspan="2" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;100&#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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company allocated $10.0&#160;million of the $25.0&#160;million paid of the cash purchase price to cash flows from operating activities and the remaining $15.0&#160;million to cash used in investing activities in the consolidated statements of cash flows for the year ended December 31, 2018. The allocation was based on the valuation of the customer relationship relative to the overall consideration. In addition, the Company disclosed $19.2&#160;million from issuance of common stock and $15.0&#160;million of cash purchase price paid for the developed technology and goodwill as investing activities in the consolidated statements of cash flows for the year ended December 31, 2018.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During 2018, total acquisition-related costs were approximately $0.8&#160;million, which were included in general and administrative expenses. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company determined it is impractical to include such pro forma information given the difficulty in obtaining the historical financial information for the SunPower microinverter business as the business was part of SunPower and did not have discrete financial information prior to the acquisition. Inclusion of such information would require the Company to make estimates and assumptions regarding the acquired business historical financial results that the Company believes may ultimately prove inaccurate.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <enph:BusinessCombinationSupplyAgreementPeriod
      contextRef="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzczMA_c5f74e5b-84a2-4b24-ad18-8dd7fbd9e52c">P5Y</enph:BusinessCombinationSupplyAgreementPeriod>
    <us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1Xzg3OTYwOTMwMjc5MzY_0884490a-88c8-4b18-8d4a-53c37d36e64e">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The acquisition date fair value of the consideration transferred was approximately $57.3&#160;million, which consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt"&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:85.449%"/&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.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash consideration&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;25,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Common stock issued&lt;/span&gt;&lt;/td&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57,319&#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:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzkzNQ_f601abc9-7a99-43fa-9d40-396180e4de25"
      unitRef="usd">57300000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <enph:PaymentsToAcquireBusinessTotalGrossAmount
      contextRef="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZTo1MDYyNDM5MDJlM2E0YjcxYmE2OGEyM2ExN2FlNWMyNy90YWJsZXJhbmdlOjUwNjI0MzkwMmUzYTRiNzFiYTY4YTIzYTE3YWU1YzI3XzAtMi0xLTEtMA_5cd6c637-5258-446e-9dc2-a3d950103dc3"
      unitRef="usd">25000000</enph:PaymentsToAcquireBusinessTotalGrossAmount>
    <us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable
      contextRef="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZTo1MDYyNDM5MDJlM2E0YjcxYmE2OGEyM2ExN2FlNWMyNy90YWJsZXJhbmdlOjUwNjI0MzkwMmUzYTRiNzFiYTY4YTIzYTE3YWU1YzI3XzEtMi0xLTEtMA_fe7af30b-5169-41dc-9618-033ae56a803d"
      unitRef="usd">32319000</us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZTo1MDYyNDM5MDJlM2E0YjcxYmE2OGEyM2ExN2FlNWMyNy90YWJsZXJhbmdlOjUwNjI0MzkwMmUzYTRiNzFiYTY4YTIzYTE3YWU1YzI3XzItMi0xLTEtMA_b1257499-5c87-4e2e-a33b-76372ada4f06"
      unitRef="usd">57319000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued
      contextRef="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzEwMjI_b8adbe0a-0826-4270-a77c-43e805184745"
      unitRef="shares">7500000</us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued>
    <us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable
      contextRef="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzEwNjY_890e9e62-c54c-41b1-bf80-92cdba81522c"
      unitRef="usd">32300000</us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable>
    <enph:BusinessCombinationConsiderationTransferredEquityInterestsIssuedandIssuableMeasurementInput
      contextRef="i158fc863f2ee4d6e9b1e704a4bb80a2d_I20180809"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzExOTM_d1cd54e9-40ee-4d14-a417-037715849aae"
      unitRef="number">0.14</enph:BusinessCombinationConsiderationTransferredEquityInterestsIssuedandIssuableMeasurementInput>
    <enph:BusinessCombinationConsiderationTransferredEquityInterestsIssuedandIssuableMeasurementInput
      contextRef="id2b72c181e674b4e9b667c499c820e20_I20180809"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzExOTk_e81e2812-6296-4829-adaf-21b7d6264503"
      unitRef="number">0.30</enph:BusinessCombinationConsiderationTransferredEquityInterestsIssuedandIssuableMeasurementInput>
    <enph:BusinessCombinationLimitationForTradeOrTransferPeriod
      contextRef="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzEzNjM_4b4bd525-7640-40a2-806d-552021755233">P6M</enph:BusinessCombinationLimitationForTradeOrTransferPeriod>
    <enph:BusinessCombinationLimitationForNumberOfSharesToBeTransferedByAcquireePeriod
      contextRef="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1Xzg3OTYwOTMwMjc5Mzk_4db45444-2f23-4956-bc8e-03e5d29081c6">P6M</enph:BusinessCombinationLimitationForNumberOfSharesToBeTransferedByAcquireePeriod>
    <us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1Xzg3OTYwOTMwMjc5Mzc_5a5728dc-3eca-4434-84aa-c05335f34d38">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&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 the preliminary estimated fair values of the assets acquired and liabilities assumed at the acquisition date (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;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:85.449%"/&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.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intangible assets&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;36,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21,119&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net assets acquired&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:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57,319&#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:middle"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below shows estimated fair values of the assets acquired funded by cash and issuance of common stock at the acquisition date: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;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:45.829%"/&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.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.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.624%"/&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:8pt;font-weight:700;line-height:100%"&gt;Cash Purchase Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Issuance of Common Stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;Total Consideration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom: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:8pt;font-weight:700;line-height:100%"&gt;% of Total Consideration&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Developed technology and goodwill&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;15,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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19,219&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;34,219&#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:9pt;font-weight:400;line-height:100%"&gt;60&#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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;Customer relationship&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:9pt;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 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:9pt;font-weight:400;line-height:100%"&gt;13,100&#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:9pt;font-weight:400;line-height:100%"&gt;23,100&#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:9pt;font-weight:400;line-height:100%"&gt;40&#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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total consideration&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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;25,000&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;32,319&#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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;57,319&#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 colspan="2" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;100&#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;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i5a269fd220b24416b55bb41a0245f406_I20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZTozZDE4MjI0YTM2NTU0YWRmOTM4OTM2NDM2ZGI4MDMyNi90YWJsZXJhbmdlOjNkMTgyMjRhMzY1NTRhZGY5Mzg5MzY0MzZkYjgwMzI2XzEtMi0xLTEtMA_5a0836d5-a90a-41c3-825b-816fe6b50c8f"
      unitRef="usd">36200000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:Goodwill
      contextRef="i5a269fd220b24416b55bb41a0245f406_I20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZTozZDE4MjI0YTM2NTU0YWRmOTM4OTM2NDM2ZGI4MDMyNi90YWJsZXJhbmdlOjNkMTgyMjRhMzY1NTRhZGY5Mzg5MzY0MzZkYjgwMzI2XzItMi0xLTEtMA_6e45ad66-0c88-40c3-9254-fdc023a18ab6"
      unitRef="usd">21119000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets
      contextRef="i5a269fd220b24416b55bb41a0245f406_I20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZTozZDE4MjI0YTM2NTU0YWRmOTM4OTM2NDM2ZGI4MDMyNi90YWJsZXJhbmdlOjNkMTgyMjRhMzY1NTRhZGY5Mzg5MzY0MzZkYjgwMzI2XzMtMi0xLTEtMA_15a135c9-6b18-430c-b195-7df0d8664c17"
      unitRef="usd">57319000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets>
    <us-gaap:Goodwill
      contextRef="i5a269fd220b24416b55bb41a0245f406_I20180809"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzE4MzA_b9b0f420-9fb4-4cb3-874a-90443e2f9fc2"
      unitRef="usd">21100000</us-gaap:Goodwill>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzIwNDQ_60accd94-118d-42fc-89f5-7c458f9421a7">P15Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1Xzg3OTYwOTMwMjc5Mzg_1b240c31-a57e-46d0-b139-eecb91e474c9">&lt;div style="margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table shows the fair value of the separately identifiable intangible assets at the time of acquisition and the period over which each intangible asset will be amortized:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;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:71.999%"/&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.622%"/&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: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:8pt;font-weight:700;line-height:100%"&gt;Preliminary Fair Value&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:8pt;font-weight:700;line-height:100%"&gt;Useful Life&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="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(In thousands)&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:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(Years)&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Developed technology&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&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:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Customer relationship&lt;/span&gt;&lt;/td&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:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;23,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9&lt;/span&gt;&lt;/td&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total identifiable intangible assets&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: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:9pt;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: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:9pt;font-weight:400;line-height:100%"&gt;36,200&#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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="id52fb79c814c410b8330ff9938e82a64_I20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZTo5Yzk4YTNlMjAyZWU0ODZlOGMyZDI0ZmNkZGMxZDAzYS90YWJsZXJhbmdlOjljOThhM2UyMDJlZTQ4NmU4YzJkMjRmY2RkYzFkMDNhXzItMi0xLTEtMA_0d6b2683-d91c-4d2e-b881-c6209f3ecf46"
      unitRef="usd">13100000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i48ad8ffbc8874dcfac449c4312d79eac_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZTo5Yzk4YTNlMjAyZWU0ODZlOGMyZDI0ZmNkZGMxZDAzYS90YWJsZXJhbmdlOjljOThhM2UyMDJlZTQ4NmU4YzJkMjRmY2RkYzFkMDNhXzItNC0xLTEtMA_b7648369-e174-46b9-9476-1ebc21c2c7fb">P6Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="iff42999a6b014aa2a5c419c1517bd59a_I20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZTo5Yzk4YTNlMjAyZWU0ODZlOGMyZDI0ZmNkZGMxZDAzYS90YWJsZXJhbmdlOjljOThhM2UyMDJlZTQ4NmU4YzJkMjRmY2RkYzFkMDNhXzMtMi0xLTEtMA_2a10f0b7-753b-43ff-9296-08e419d22e01"
      unitRef="usd">23100000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i79eb7af78c024c54bd52de054491961e_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZTo5Yzk4YTNlMjAyZWU0ODZlOGMyZDI0ZmNkZGMxZDAzYS90YWJsZXJhbmdlOjljOThhM2UyMDJlZTQ4NmU4YzJkMjRmY2RkYzFkMDNhXzMtNC0xLTEtMA_4580aad0-69b1-42bd-8833-6e5f40aed680">P9Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i5a269fd220b24416b55bb41a0245f406_I20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZTo5Yzk4YTNlMjAyZWU0ODZlOGMyZDI0ZmNkZGMxZDAzYS90YWJsZXJhbmdlOjljOThhM2UyMDJlZTQ4NmU4YzJkMjRmY2RkYzFkMDNhXzQtMi0xLTEtMA_b109d22f-e9ad-4cf4-bada-0247dbff5d81"
      unitRef="usd">36200000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i48ad8ffbc8874dcfac449c4312d79eac_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzM0NDA_10047b53-dec4-4c87-b43f-fb63fdd3b155">P6Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i48ad8ffbc8874dcfac449c4312d79eac_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzM1NTM_b7648369-e174-46b9-9476-1ebc21c2c7fb">P6Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <enph:BusinessCombinationSupplyAgreementPeriod
      contextRef="iee19031efa2148fc98acc1c4a8aff9c8_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzM2OTk_b5d0441e-032a-4927-aefc-f80df571e619">P5Y</enph:BusinessCombinationSupplyAgreementPeriod>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i79eb7af78c024c54bd52de054491961e_D20180809-20180809"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzQyOTA_4580aad0-69b1-42bd-8833-6e5f40aed680">P9Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <enph:PaymentsToAcquireBusinessTotalGrossAmount
      contextRef="ib28d8331c0f041cabfd9c8600a33d5c2_D20180809-20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZToxMTdhODczOGVjYWE0MzIwYTE2NGMzYTI0MTc1Y2ExOC90YWJsZXJhbmdlOjExN2E4NzM4ZWNhYTQzMjBhMTY0YzNhMjQxNzVjYTE4XzItMS0xLTEtMA_412faa37-6041-4052-94f6-bbad1609d977"
      unitRef="usd">15000000</enph:PaymentsToAcquireBusinessTotalGrossAmount>
    <us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable
      contextRef="ib28d8331c0f041cabfd9c8600a33d5c2_D20180809-20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZToxMTdhODczOGVjYWE0MzIwYTE2NGMzYTI0MTc1Y2ExOC90YWJsZXJhbmdlOjExN2E4NzM4ZWNhYTQzMjBhMTY0YzNhMjQxNzVjYTE4XzItMy0xLTEtMA_7c367708-b6fe-4927-ad15-321bfdfee7e3"
      unitRef="usd">19219000</us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="ib28d8331c0f041cabfd9c8600a33d5c2_D20180809-20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZToxMTdhODczOGVjYWE0MzIwYTE2NGMzYTI0MTc1Y2ExOC90YWJsZXJhbmdlOjExN2E4NzM4ZWNhYTQzMjBhMTY0YzNhMjQxNzVjYTE4XzItNS0xLTEtMA_7d2a939e-bd84-4be9-ac29-5ad42cd0d365"
      unitRef="usd">34219000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ib28d8331c0f041cabfd9c8600a33d5c2_D20180809-20180809"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZToxMTdhODczOGVjYWE0MzIwYTE2NGMzYTI0MTc1Y2ExOC90YWJsZXJhbmdlOjExN2E4NzM4ZWNhYTQzMjBhMTY0YzNhMjQxNzVjYTE4XzItNy0xLTEtMA_4c939eb8-18c5-4d9c-b2eb-a16e9b9311ad"
      unitRef="number">0.60</us-gaap:ConcentrationRiskPercentage1>
    <enph:PaymentsToAcquireBusinessTotalGrossAmount
      contextRef="i8717b2b5f19440a98d59399e484e9293_D20180809-20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZToxMTdhODczOGVjYWE0MzIwYTE2NGMzYTI0MTc1Y2ExOC90YWJsZXJhbmdlOjExN2E4NzM4ZWNhYTQzMjBhMTY0YzNhMjQxNzVjYTE4XzMtMS0xLTEtMA_16c38cda-f351-4180-8d6f-38eb422e5717"
      unitRef="usd">10000000</enph:PaymentsToAcquireBusinessTotalGrossAmount>
    <us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable
      contextRef="i8717b2b5f19440a98d59399e484e9293_D20180809-20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZToxMTdhODczOGVjYWE0MzIwYTE2NGMzYTI0MTc1Y2ExOC90YWJsZXJhbmdlOjExN2E4NzM4ZWNhYTQzMjBhMTY0YzNhMjQxNzVjYTE4XzMtMy0xLTEtMA_f47a601e-1d4c-4f52-b5eb-6f7f2e56d017"
      unitRef="usd">13100000</us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i8717b2b5f19440a98d59399e484e9293_D20180809-20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZToxMTdhODczOGVjYWE0MzIwYTE2NGMzYTI0MTc1Y2ExOC90YWJsZXJhbmdlOjExN2E4NzM4ZWNhYTQzMjBhMTY0YzNhMjQxNzVjYTE4XzMtNS0xLTEtMA_4319073c-af7a-4969-8675-315f13098b89"
      unitRef="usd">23100000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i8717b2b5f19440a98d59399e484e9293_D20180809-20180809"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZToxMTdhODczOGVjYWE0MzIwYTE2NGMzYTI0MTc1Y2ExOC90YWJsZXJhbmdlOjExN2E4NzM4ZWNhYTQzMjBhMTY0YzNhMjQxNzVjYTE4XzMtNy0xLTEtMA_72087c4e-5302-43c8-9f27-3c5a09802c22"
      unitRef="number">0.40</us-gaap:ConcentrationRiskPercentage1>
    <enph:PaymentsToAcquireBusinessTotalGrossAmount
      contextRef="i2dcd7178059641fcaeb27736adaa5e77_D20180809-20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZToxMTdhODczOGVjYWE0MzIwYTE2NGMzYTI0MTc1Y2ExOC90YWJsZXJhbmdlOjExN2E4NzM4ZWNhYTQzMjBhMTY0YzNhMjQxNzVjYTE4XzQtMS0xLTEtMA_59d1a5be-bd81-45f0-8aa5-dd6b68de4d14"
      unitRef="usd">25000000</enph:PaymentsToAcquireBusinessTotalGrossAmount>
    <us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable
      contextRef="i2dcd7178059641fcaeb27736adaa5e77_D20180809-20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZToxMTdhODczOGVjYWE0MzIwYTE2NGMzYTI0MTc1Y2ExOC90YWJsZXJhbmdlOjExN2E4NzM4ZWNhYTQzMjBhMTY0YzNhMjQxNzVjYTE4XzQtMy0xLTEtMA_9c054db7-6d2a-41ff-ad73-9ae248cc076d"
      unitRef="usd">32319000</us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i2dcd7178059641fcaeb27736adaa5e77_D20180809-20180809"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZToxMTdhODczOGVjYWE0MzIwYTE2NGMzYTI0MTc1Y2ExOC90YWJsZXJhbmdlOjExN2E4NzM4ZWNhYTQzMjBhMTY0YzNhMjQxNzVjYTE4XzQtNS0xLTEtMA_0a104b08-a22c-4631-a1f2-96dc91b8a967"
      unitRef="usd">57319000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i2dcd7178059641fcaeb27736adaa5e77_D20180809-20180809"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90YWJsZToxMTdhODczOGVjYWE0MzIwYTE2NGMzYTI0MTc1Y2ExOC90YWJsZXJhbmdlOjExN2E4NzM4ZWNhYTQzMjBhMTY0YzNhMjQxNzVjYTE4XzQtNy0xLTEtMA_eaeabceb-518f-41a2-8ff0-bb2a097cb701"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i4305099f1146489f8f871df7f116904d_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzQ0NTY_df2d11b3-f717-42aa-812b-d0d15826c200"
      unitRef="usd">10000000.0</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i4305099f1146489f8f871df7f116904d_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzQ0NjY_14406bf9-bd47-4244-870f-fb712063458e"
      unitRef="usd">25000000.0</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i4305099f1146489f8f871df7f116904d_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzQ1NTk_83a1122c-d83b-4588-a2ce-fbbbfe27179f"
      unitRef="usd">15000000.0</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:StockIssued1
      contextRef="i4305099f1146489f8f871df7f116904d_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzQ4Mjg_95fed014-e2f0-47ff-b4b5-1071f1223daf"
      unitRef="usd">19200000</us-gaap:StockIssued1>
    <enph:PaymentsToAcquireBusinessTotalGrossAmount
      contextRef="i4305099f1146489f8f871df7f116904d_D20180101-20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzQ4NjU_eb9f31be-f9d5-4fd3-aa46-25f3ba767cef"
      unitRef="usd">15000000.0</enph:PaymentsToAcquireBusinessTotalGrossAmount>
    <us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts
      contextRef="ib09b6c425b104055909d81ec2a3fc81e_I20181231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8yOTUvZnJhZzoxZTIwZTZmM2YwYzI0Y2U4YjAzZDE1ZTMyMDQ5NDhjNS90ZXh0cmVnaW9uOjFlMjBlNmYzZjBjMjRjZThiMDNkMTVlMzIwNDk0OGM1XzUxMTA_fcf077bf-c712-4bfa-a652-114eaaed07de"
      unitRef="usd">800000</us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDEvZnJhZzphZjMyOTdiOTdkMzE0MzUzYTBkYWNhNzM0Y2I5ZTA5Yi90ZXh0cmVnaW9uOmFmMzI5N2I5N2QzMTQzNTNhMGRhY2E3MzRjYjllMDliXzM1_2dc13bfa-2525-45af-b468-85aa1c0ddc96">SUBSEQUENT EVENTS&lt;div style="text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In January 2021, the Company invested $25.0&#160;million in cash in a privately-held company. The investment does not require consolidation into the Company&#x2019;s financial statements because the privately-held company is not a variable interest entity and the Company does not hold a majority voting interest.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On January 25, 2021, the Company completed the acquisition of 100% of the voting interest of Sofdesk Inc. (&#x201c;Sofdesk&#x201d;), a privately-held company. Sofdesk provides design software for residential solar installers and roofing companies. As part of the consideration, the Company paid approximately $32.0&#160;million in cash on January 25, 2021. The Company is currently in the process of completing the preliminary purchase price allocation, which will be included in the Company&#x2019;s Quarterly Report on Form 10-Q for the quarter ended March 31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On February 8, 2021, the Company announced that it has agreed to acquire the solar design services business of DIN Engineering Services LLP (&#x201c;DIN&#x201d;). DIN provides proposal drawings and permit plan sets for residential solar installers in North America. The acquisition is subject to customary closing conditions and regulatory approvals.&lt;/span&gt;&lt;/div&gt;</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="ibaea5bb541d14846a35b042b80297ec9_D20210101-20210131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDEvZnJhZzphZjMyOTdiOTdkMzE0MzUzYTBkYWNhNzM0Y2I5ZTA5Yi90ZXh0cmVnaW9uOmFmMzI5N2I5N2QzMTQzNTNhMGRhY2E3MzRjYjllMDliXzQ5NDc4MDIzMjU4NjU_af964b11-5d03-49a6-8576-32d1a8655418"
      unitRef="usd">25000000.0</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired
      contextRef="i4a05b041b02540218be40a917bd90d1c_I20210125"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDEvZnJhZzphZjMyOTdiOTdkMzE0MzUzYTBkYWNhNzM0Y2I5ZTA5Yi90ZXh0cmVnaW9uOmFmMzI5N2I5N2QzMTQzNTNhMGRhY2E3MzRjYjllMDliXzgyNDYzMzcyMTIwNDI_cd5f12a5-f369-4587-8bc2-15afaeab94c6"
      unitRef="number">1</us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="ieba15b086a9f409f9ed2e792b4ef60e1_D20210125-20210125"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDEvZnJhZzphZjMyOTdiOTdkMzE0MzUzYTBkYWNhNzM0Y2I5ZTA5Yi90ZXh0cmVnaW9uOmFmMzI5N2I5N2QzMTQzNTNhMGRhY2E3MzRjYjllMDliXzgyNDYzMzcyMTIwNDg_c286c124-4514-4d62-9a0a-a7a7490f9894"
      unitRef="usd">32000000.0</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90ZXh0cmVnaW9uOjk0MDI1OWQzNmE2NzQ0ZDJiNmI1ZTBkMWMwYmYyMGY5XzQ5NDc4MDIzMjUyMzM_6419be6c-d739-40cc-8f29-56abb93b8717">&lt;div style="margin-bottom:6pt;margin-top:9pt;padding-left:9pt;padding-right:9pt;text-align:center;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;SELECTED UNAUDITED QUARTERLY FINANCIAL INFORMATION&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following tables show a summary of the Company&#x2019;s quarterly financial information for each of the four quarters of 2020 and 2019 (in thousands, except per share data):&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:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:33.549%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.689%"/&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:14.689%"/&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:14.689%"/&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:14.694%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&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:8pt;font-weight:700;line-height:100%"&gt;March 31, 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:8pt;font-weight:700;line-height:100%"&gt;June 30, 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:8pt;font-weight:700;line-height:100%"&gt;September 30, 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:8pt;font-weight:700;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net revenues&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;205,545&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;125,538&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;178,503&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;264,839&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&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:9pt;font-weight:400;line-height:100%"&gt;124,870&#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:9pt;font-weight:400;line-height:100%"&gt;77,151&#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:9pt;font-weight:400;line-height:100%"&gt;83,522&#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:9pt;font-weight:400;line-height:100%"&gt;142,901&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Gross profit&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:9pt;font-weight:400;line-height:100%"&gt;80,675&#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:9pt;font-weight:400;line-height:100%"&gt;48,387&#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:9pt;font-weight:400;line-height:100%"&gt;94,981&#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:9pt;font-weight:400;line-height:100%"&gt;121,938&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&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:9pt;font-weight:400;line-height:100%"&gt;11,876&#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:9pt;font-weight:400;line-height:100%"&gt;13,192&#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:9pt;font-weight:400;line-height:100%"&gt;15,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;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:9pt;font-weight:400;line-height:100%"&gt;15,801&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&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:9pt;font-weight:400;line-height:100%"&gt;11,772&#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:9pt;font-weight:400;line-height:100%"&gt;12,371&#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:9pt;font-weight:400;line-height:100%"&gt;14,645&#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:9pt;font-weight:400;line-height:100%"&gt;14,139&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:9pt;font-weight:400;line-height:100%"&gt;12,315&#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:9pt;font-weight:400;line-height:100%"&gt;11,970&#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:9pt;font-weight:400;line-height:100%"&gt;13,525&#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:9pt;font-weight:400;line-height:100%"&gt;12,884&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total operating expenses&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:9pt;font-weight:400;line-height:100%"&gt;35,963&#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 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:9pt;font-weight:400;line-height:100%"&gt;37,533&#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 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:9pt;font-weight:400;line-height:100%"&gt;43,222&#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 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:9pt;font-weight:400;line-height:100%"&gt;42,824&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Income from operations&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:9pt;font-weight:400;line-height:100%"&gt;44,712&#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:9pt;font-weight:400;line-height:100%"&gt;10,854&#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:9pt;font-weight:400;line-height:100%"&gt;51,759&#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:9pt;font-weight:400;line-height:100%"&gt;79,114&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Other income (expense), net&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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest Income&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:9pt;font-weight:400;line-height:100%"&gt;1,091&#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:9pt;font-weight:400;line-height:100%"&gt;282&#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:9pt;font-weight:400;line-height:100%"&gt;110&#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:9pt;font-weight:400;line-height:100%"&gt;673&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&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:9pt;font-weight:400;line-height:100%"&gt;(3,155)&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:9pt;font-weight:400;line-height:100%"&gt;(5,952)&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:9pt;font-weight:400;line-height:100%"&gt;(5,993)&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:9pt;font-weight:400;line-height:100%"&gt;(5,901)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other income (expense)&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:9pt;font-weight:400;line-height:100%"&gt;(924)&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:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;(1,031)&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:9pt;font-weight:400;line-height:100%"&gt;(2,534)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Change in fair value of derivatives&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:9pt;font-weight:400;line-height:100%"&gt;15,344&#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:9pt;font-weight:400;line-height:100%"&gt;(59,692)&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:9pt;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 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:9pt;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total other income (expense), net&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:9pt;font-weight:400;line-height:100%"&gt;12,356&#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:9pt;font-weight:400;line-height:100%"&gt;(64,709)&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:9pt;font-weight:400;line-height:100%"&gt;(6,914)&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:9pt;font-weight:400;line-height:100%"&gt;(7,762)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Income (loss) before income taxes&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:9pt;font-weight:400;line-height:100%"&gt;57,068&#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 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:9pt;font-weight:400;line-height:100%"&gt;(53,855)&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:9pt;font-weight:400;line-height:100%"&gt;44,845&#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 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:9pt;font-weight:400;line-height:100%"&gt;71,352&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Income tax benefit (provision)&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:9pt;font-weight:400;line-height:100%"&gt;11,868&#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:9pt;font-weight:400;line-height:100%"&gt;6,561&#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:9pt;font-weight:400;line-height:100%"&gt;(5,483)&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:9pt;font-weight:400;line-height:100%"&gt;1,639&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income (loss)&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;68,936&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;(47,294)&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;39,362&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;72,991&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income (loss) per share, basic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;(0.38)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.31&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.57&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income (loss) per share, diluted&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.50&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;(0.38)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.50&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.122%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:33.265%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.681%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.685%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&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:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&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:8pt;font-weight:700;line-height:100%"&gt;March&#160;31, 2019&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:8pt;font-weight:700;line-height:100%"&gt;June 30, 2019&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:8pt;font-weight:700;line-height:100%"&gt;September 30, 2019&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:8pt;font-weight:700;line-height:100%"&gt;December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net revenues&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;100,150&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;134,094&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;180,057&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;210,032&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&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:9pt;font-weight:400;line-height:100%"&gt;66,811&#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:9pt;font-weight:400;line-height:100%"&gt;88,775&#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:9pt;font-weight:400;line-height:100%"&gt;115,351&#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:9pt;font-weight:400;line-height:100%"&gt;132,151&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Gross profit&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:9pt;font-weight:400;line-height:100%"&gt;33,339&#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:9pt;font-weight:400;line-height:100%"&gt;45,319&#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:9pt;font-weight:400;line-height:100%"&gt;64,706&#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:9pt;font-weight:400;line-height:100%"&gt;77,881&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&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:9pt;font-weight:400;line-height:100%"&gt;8,524&#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:9pt;font-weight:400;line-height:100%"&gt;9,604&#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:9pt;font-weight:400;line-height:100%"&gt;11,085&#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:9pt;font-weight:400;line-height:100%"&gt;11,168&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&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:9pt;font-weight:400;line-height:100%"&gt;7,433&#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:9pt;font-weight:400;line-height:100%"&gt;9,054&#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:9pt;font-weight:400;line-height:100%"&gt;9,551&#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:9pt;font-weight:400;line-height:100%"&gt;10,690&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:9pt;font-weight:400;line-height:100%"&gt;9,880&#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:9pt;font-weight:400;line-height:100%"&gt;8,583&#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:9pt;font-weight:400;line-height:100%"&gt;9,895&#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:9pt;font-weight:400;line-height:100%"&gt;10,450&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Restructuring charges&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:9pt;font-weight:400;line-height:100%"&gt;368&#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:9pt;font-weight:400;line-height:100%"&gt;631&#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:9pt;font-weight:400;line-height:100%"&gt;469&#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:9pt;font-weight:400;line-height:100%"&gt;1,131&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total operating expenses&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:9pt;font-weight:400;line-height:100%"&gt;26,205&#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:9pt;font-weight:400;line-height:100%"&gt;27,872&#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:9pt;font-weight:400;line-height:100%"&gt;31,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 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:9pt;font-weight:400;line-height:100%"&gt;33,439&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Income from operations&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:9pt;font-weight:400;line-height:100%"&gt;7,134&#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 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:9pt;font-weight:400;line-height:100%"&gt;17,447&#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 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:9pt;font-weight:400;line-height:100%"&gt;33,706&#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 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:9pt;font-weight:400;line-height:100%"&gt;44,442&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Other expense, net&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;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest income&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:9pt;font-weight:400;line-height:100%"&gt;211&#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:9pt;font-weight:400;line-height:100%"&gt;593&#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:9pt;font-weight:400;line-height:100%"&gt;894&#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:9pt;font-weight:400;line-height:100%"&gt;815&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&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:9pt;font-weight:400;line-height:100%"&gt;(3,751)&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:9pt;font-weight:400;line-height:100%"&gt;(1,351)&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:9pt;font-weight:400;line-height:100%"&gt;(2,286)&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:9pt;font-weight:400;line-height:100%"&gt;(2,303)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other income (expense), net&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:9pt;font-weight:400;line-height:100%"&gt;(481)&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:9pt;font-weight:400;line-height:100%"&gt;(5,480)&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:9pt;font-weight:400;line-height:100%"&gt;(943)&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:9pt;font-weight:400;line-height:100%"&gt;1,467&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total other expense, net&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:9pt;font-weight:400;line-height:100%"&gt;(4,021)&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:9pt;font-weight:400;line-height:100%"&gt;(6,238)&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:9pt;font-weight:400;line-height:100%"&gt;(2,335)&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:9pt;font-weight:400;line-height:100%"&gt;(21)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Income before income taxes&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:9pt;font-weight:400;line-height:100%"&gt;3,113&#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:9pt;font-weight:400;line-height:100%"&gt;11,209&#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:9pt;font-weight:400;line-height:100%"&gt;31,371&#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:9pt;font-weight:400;line-height:100%"&gt;44,421&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Income tax benefit (provision)&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:9pt;font-weight:400;line-height:100%"&gt;(348)&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:9pt;font-weight:400;line-height:100%"&gt;(591)&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:9pt;font-weight:400;line-height:100%"&gt;(272)&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:9pt;font-weight:400;line-height:100%"&gt;72,245&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;2,765&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;10,618&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;31,099&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;116,666&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income per share, basic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.03&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.09&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.95&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income per diluted share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.02&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.08&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.88&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock>
    <us-gaap:QuarterlyFinancialInformationTextBlock
      contextRef="i3a830c8c88b1446badd0da69c58e94d5_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90ZXh0cmVnaW9uOjk0MDI1OWQzNmE2NzQ0ZDJiNmI1ZTBkMWMwYmYyMGY5XzQ5NDc4MDIzMjUyMzM_f5ae61cf-1571-40bf-bc86-0099eee085a3">&lt;div style="margin-bottom:6pt;margin-top:9pt;padding-left:9pt;padding-right:9pt;text-align:center;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;SELECTED UNAUDITED QUARTERLY FINANCIAL INFORMATION&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:27pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following tables show a summary of the Company&#x2019;s quarterly financial information for each of the four quarters of 2020 and 2019 (in thousands, except per share data):&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:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:33.549%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.689%"/&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:14.689%"/&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:14.689%"/&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:14.694%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&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:8pt;font-weight:700;line-height:100%"&gt;March 31, 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:8pt;font-weight:700;line-height:100%"&gt;June 30, 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:8pt;font-weight:700;line-height:100%"&gt;September 30, 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:8pt;font-weight:700;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net revenues&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;205,545&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;125,538&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;178,503&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;264,839&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&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:9pt;font-weight:400;line-height:100%"&gt;124,870&#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:9pt;font-weight:400;line-height:100%"&gt;77,151&#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:9pt;font-weight:400;line-height:100%"&gt;83,522&#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:9pt;font-weight:400;line-height:100%"&gt;142,901&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Gross profit&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:9pt;font-weight:400;line-height:100%"&gt;80,675&#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:9pt;font-weight:400;line-height:100%"&gt;48,387&#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:9pt;font-weight:400;line-height:100%"&gt;94,981&#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:9pt;font-weight:400;line-height:100%"&gt;121,938&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&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:9pt;font-weight:400;line-height:100%"&gt;11,876&#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:9pt;font-weight:400;line-height:100%"&gt;13,192&#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:9pt;font-weight:400;line-height:100%"&gt;15,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;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:9pt;font-weight:400;line-height:100%"&gt;15,801&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&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:9pt;font-weight:400;line-height:100%"&gt;11,772&#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:9pt;font-weight:400;line-height:100%"&gt;12,371&#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:9pt;font-weight:400;line-height:100%"&gt;14,645&#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:9pt;font-weight:400;line-height:100%"&gt;14,139&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:9pt;font-weight:400;line-height:100%"&gt;12,315&#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:9pt;font-weight:400;line-height:100%"&gt;11,970&#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:9pt;font-weight:400;line-height:100%"&gt;13,525&#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:9pt;font-weight:400;line-height:100%"&gt;12,884&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total operating expenses&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:9pt;font-weight:400;line-height:100%"&gt;35,963&#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 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:9pt;font-weight:400;line-height:100%"&gt;37,533&#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 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:9pt;font-weight:400;line-height:100%"&gt;43,222&#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 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:9pt;font-weight:400;line-height:100%"&gt;42,824&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Income from operations&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:9pt;font-weight:400;line-height:100%"&gt;44,712&#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:9pt;font-weight:400;line-height:100%"&gt;10,854&#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:9pt;font-weight:400;line-height:100%"&gt;51,759&#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:9pt;font-weight:400;line-height:100%"&gt;79,114&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Other income (expense), net&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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest Income&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:9pt;font-weight:400;line-height:100%"&gt;1,091&#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:9pt;font-weight:400;line-height:100%"&gt;282&#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:9pt;font-weight:400;line-height:100%"&gt;110&#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:9pt;font-weight:400;line-height:100%"&gt;673&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&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:9pt;font-weight:400;line-height:100%"&gt;(3,155)&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:9pt;font-weight:400;line-height:100%"&gt;(5,952)&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:9pt;font-weight:400;line-height:100%"&gt;(5,993)&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:9pt;font-weight:400;line-height:100%"&gt;(5,901)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other income (expense)&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:9pt;font-weight:400;line-height:100%"&gt;(924)&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:9pt;font-weight:400;line-height:100%"&gt;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:9pt;font-weight:400;line-height:100%"&gt;(1,031)&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:9pt;font-weight:400;line-height:100%"&gt;(2,534)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Change in fair value of derivatives&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:9pt;font-weight:400;line-height:100%"&gt;15,344&#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:9pt;font-weight:400;line-height:100%"&gt;(59,692)&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:9pt;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 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:9pt;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total other income (expense), net&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:9pt;font-weight:400;line-height:100%"&gt;12,356&#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:9pt;font-weight:400;line-height:100%"&gt;(64,709)&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:9pt;font-weight:400;line-height:100%"&gt;(6,914)&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:9pt;font-weight:400;line-height:100%"&gt;(7,762)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Income (loss) before income taxes&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:9pt;font-weight:400;line-height:100%"&gt;57,068&#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 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:9pt;font-weight:400;line-height:100%"&gt;(53,855)&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:9pt;font-weight:400;line-height:100%"&gt;44,845&#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 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:9pt;font-weight:400;line-height:100%"&gt;71,352&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Income tax benefit (provision)&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:9pt;font-weight:400;line-height:100%"&gt;11,868&#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:9pt;font-weight:400;line-height:100%"&gt;6,561&#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:9pt;font-weight:400;line-height:100%"&gt;(5,483)&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:9pt;font-weight:400;line-height:100%"&gt;1,639&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income (loss)&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;68,936&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;(47,294)&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;39,362&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;72,991&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income (loss) per share, basic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;(0.38)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.31&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.57&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income (loss) per share, diluted&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.50&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;(0.38)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.50&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.122%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:33.265%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.681%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.537%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.685%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&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:8pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&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:8pt;font-weight:700;line-height:100%"&gt;March&#160;31, 2019&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:8pt;font-weight:700;line-height:100%"&gt;June 30, 2019&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:8pt;font-weight:700;line-height:100%"&gt;September 30, 2019&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:8pt;font-weight:700;line-height:100%"&gt;December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net revenues&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;100,150&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;134,094&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;180,057&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;210,032&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&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:9pt;font-weight:400;line-height:100%"&gt;66,811&#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:9pt;font-weight:400;line-height:100%"&gt;88,775&#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:9pt;font-weight:400;line-height:100%"&gt;115,351&#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:9pt;font-weight:400;line-height:100%"&gt;132,151&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Gross profit&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:9pt;font-weight:400;line-height:100%"&gt;33,339&#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:9pt;font-weight:400;line-height:100%"&gt;45,319&#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:9pt;font-weight:400;line-height:100%"&gt;64,706&#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:9pt;font-weight:400;line-height:100%"&gt;77,881&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&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:9pt;font-weight:400;line-height:100%"&gt;8,524&#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:9pt;font-weight:400;line-height:100%"&gt;9,604&#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:9pt;font-weight:400;line-height:100%"&gt;11,085&#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:9pt;font-weight:400;line-height:100%"&gt;11,168&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&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:9pt;font-weight:400;line-height:100%"&gt;7,433&#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:9pt;font-weight:400;line-height:100%"&gt;9,054&#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:9pt;font-weight:400;line-height:100%"&gt;9,551&#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:9pt;font-weight:400;line-height:100%"&gt;10,690&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:9pt;font-weight:400;line-height:100%"&gt;9,880&#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:9pt;font-weight:400;line-height:100%"&gt;8,583&#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:9pt;font-weight:400;line-height:100%"&gt;9,895&#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:9pt;font-weight:400;line-height:100%"&gt;10,450&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Restructuring charges&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:9pt;font-weight:400;line-height:100%"&gt;368&#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:9pt;font-weight:400;line-height:100%"&gt;631&#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:9pt;font-weight:400;line-height:100%"&gt;469&#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:9pt;font-weight:400;line-height:100%"&gt;1,131&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total operating expenses&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:9pt;font-weight:400;line-height:100%"&gt;26,205&#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:9pt;font-weight:400;line-height:100%"&gt;27,872&#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:9pt;font-weight:400;line-height:100%"&gt;31,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 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:9pt;font-weight:400;line-height:100%"&gt;33,439&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Income from operations&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:9pt;font-weight:400;line-height:100%"&gt;7,134&#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 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:9pt;font-weight:400;line-height:100%"&gt;17,447&#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 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:9pt;font-weight:400;line-height:100%"&gt;33,706&#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 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:9pt;font-weight:400;line-height:100%"&gt;44,442&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Other expense, net&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;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest income&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:9pt;font-weight:400;line-height:100%"&gt;211&#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:9pt;font-weight:400;line-height:100%"&gt;593&#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:9pt;font-weight:400;line-height:100%"&gt;894&#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:9pt;font-weight:400;line-height:100%"&gt;815&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&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:9pt;font-weight:400;line-height:100%"&gt;(3,751)&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:9pt;font-weight:400;line-height:100%"&gt;(1,351)&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:9pt;font-weight:400;line-height:100%"&gt;(2,286)&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:9pt;font-weight:400;line-height:100%"&gt;(2,303)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other income (expense), net&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:9pt;font-weight:400;line-height:100%"&gt;(481)&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:9pt;font-weight:400;line-height:100%"&gt;(5,480)&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:9pt;font-weight:400;line-height:100%"&gt;(943)&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:9pt;font-weight:400;line-height:100%"&gt;1,467&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total other expense, net&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:9pt;font-weight:400;line-height:100%"&gt;(4,021)&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:9pt;font-weight:400;line-height:100%"&gt;(6,238)&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:9pt;font-weight:400;line-height:100%"&gt;(2,335)&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:9pt;font-weight:400;line-height:100%"&gt;(21)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Income before income taxes&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:9pt;font-weight:400;line-height:100%"&gt;3,113&#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:9pt;font-weight:400;line-height:100%"&gt;11,209&#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:9pt;font-weight:400;line-height:100%"&gt;31,371&#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:9pt;font-weight:400;line-height:100%"&gt;44,421&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Income tax benefit (provision)&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:9pt;font-weight:400;line-height:100%"&gt;(348)&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:9pt;font-weight:400;line-height:100%"&gt;(591)&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:9pt;font-weight:400;line-height:100%"&gt;(272)&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:9pt;font-weight:400;line-height:100%"&gt;72,245&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income&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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;2,765&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;10,618&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;31,099&#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:9pt;font-weight:400;line-height:100%"&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:9pt;font-weight:400;line-height:100%"&gt;116,666&#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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income per share, basic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.03&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.09&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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-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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;0.95&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&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:9pt;font-weight:400;line-height:100%"&gt;Net income per diluted share&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.02&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.08&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:9pt;font-weight:400;line-height:100%"&gt;0.88&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:QuarterlyFinancialInformationTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzItMS0xLTEtMA_5fafd147-2e79-430e-964a-def587e36c96"
      unitRef="usd">205545000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzItMy0xLTEtMA_82585d35-8344-4528-a982-a11ad22853ca"
      unitRef="usd">125538000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzItNS0xLTEtMA_0e779f7d-ccc8-4b50-a04b-125a7c1f47c2"
      unitRef="usd">178503000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzItNy0xLTEtMA_fe45d235-5990-4a33-8d6f-e9134e0052a3"
      unitRef="usd">264839000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfRevenue
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzMtMS0xLTEtMA_8eea7f23-a393-445c-ab37-faf805c42e35"
      unitRef="usd">124870000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzMtMy0xLTEtMA_d10330c1-dc83-4cb9-8d02-1f82e45a96f8"
      unitRef="usd">77151000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzMtNS0xLTEtMA_90b70d5d-d613-41ed-9a52-bf76447a055e"
      unitRef="usd">83522000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzMtNy0xLTEtMA_d56708b5-af36-4f3c-9be0-1e2b67c96975"
      unitRef="usd">142901000</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzQtMS0xLTEtMA_c1d0a5c0-ef16-4db6-a425-355cfc69fe9d"
      unitRef="usd">80675000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzQtMy0xLTEtMA_08d51550-5376-4dee-a36c-d45dec532fe7"
      unitRef="usd">48387000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzQtNS0xLTEtMA_3550b0cd-e63e-4f49-b4ae-419efd4aca9e"
      unitRef="usd">94981000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzQtNy0xLTEtMA_0c652483-3324-42e6-a2a1-65d15ed88761"
      unitRef="usd">121938000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzYtMS0xLTEtMA_6dddd383-f98a-44e7-83d8-9b0dc01dfc3c"
      unitRef="usd">11876000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzYtMy0xLTEtMA_822eca92-8fcb-4f0f-bfee-51b39c10128f"
      unitRef="usd">13192000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzYtNS0xLTEtMA_5e96b893-3652-4787-9504-79775dcde662"
      unitRef="usd">15052000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzYtNy0xLTEtMA_dcfb5ae1-1d02-4b1d-8e9e-28f62c36b5e4"
      unitRef="usd">15801000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzctMS0xLTEtMA_48267d23-b944-46bc-93c3-497cac97611a"
      unitRef="usd">11772000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzctMy0xLTEtMA_3ee97feb-28b8-4d33-bd0c-105b57551880"
      unitRef="usd">12371000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzctNS0xLTEtMA_d0c17806-32c8-4745-ac23-43446c6154d7"
      unitRef="usd">14645000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzctNy0xLTEtMA_3b0a20cb-9408-4c04-9a37-e5182ac0f25b"
      unitRef="usd">14139000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzgtMS0xLTEtMA_c49f34f8-fcce-4609-a74d-bc4314180a6d"
      unitRef="usd">12315000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzgtMy0xLTEtMA_2a4de777-fac6-4510-b8bd-20068e9d5cbd"
      unitRef="usd">11970000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzgtNS0xLTEtMA_29a00199-a365-43dd-b0e5-a14942d6dfc2"
      unitRef="usd">13525000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzgtNy0xLTEtMA_d833d5f6-e88c-4824-a755-9e426bc128b6"
      unitRef="usd">12884000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:OperatingExpenses
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzEwLTEtMS0xLTA_e990e0b8-3202-44d4-acd3-089103fb2d42"
      unitRef="usd">35963000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzEwLTMtMS0xLTA_16a7551b-3d68-4841-8c4e-a8be7c31524b"
      unitRef="usd">37533000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzEwLTUtMS0xLTA_e0ea24a5-fd80-4b3d-a774-d339f2125fe5"
      unitRef="usd">43222000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzEwLTctMS0xLTA_7f72f44f-388e-4a51-935e-d38335c3dd94"
      unitRef="usd">42824000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzExLTEtMS0xLTA_b70fdbc6-3569-45f3-a0a0-8831c0e90740"
      unitRef="usd">44712000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzExLTMtMS0xLTA_dfbb7fdd-a35a-45a8-aba0-f832ce28bed3"
      unitRef="usd">10854000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzExLTUtMS0xLTA_a8bb3035-2b26-4ae5-8612-461607e534aa"
      unitRef="usd">51759000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzExLTctMS0xLTA_f969239d-3065-4f12-8968-9032b7707c0f"
      unitRef="usd">79114000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeDepositsWithFinancialInstitutions
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzEzLTEtMS0xLTA_a480bcc0-d527-406e-90fe-1b2676d3a7df"
      unitRef="usd">1091000</us-gaap:InterestIncomeDepositsWithFinancialInstitutions>
    <us-gaap:InterestIncomeDepositsWithFinancialInstitutions
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzEzLTMtMS0xLTA_1105a756-b8fd-4e39-a36a-4054f1e2c9de"
      unitRef="usd">282000</us-gaap:InterestIncomeDepositsWithFinancialInstitutions>
    <us-gaap:InterestIncomeDepositsWithFinancialInstitutions
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzEzLTUtMS0xLTA_4d5afee7-bb37-4870-b868-9ede22c981ff"
      unitRef="usd">110000</us-gaap:InterestIncomeDepositsWithFinancialInstitutions>
    <us-gaap:InterestIncomeDepositsWithFinancialInstitutions
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzEzLTctMS0xLTA_b38eb3a4-7c9c-43dd-95a7-2e3244a3e7b3"
      unitRef="usd">673000</us-gaap:InterestIncomeDepositsWithFinancialInstitutions>
    <us-gaap:InterestExpense
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE0LTEtMS0xLTA_bfcac9d3-7ef5-42c6-84ed-8972a8e42228"
      unitRef="usd">3155000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE0LTMtMS0xLTA_fb3c502a-4ef1-4a91-867d-13cce6c74149"
      unitRef="usd">5952000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE0LTUtMS0xLTA_0a9e05ab-9ad9-4631-9cc1-7f51635f3392"
      unitRef="usd">5993000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE0LTctMS0xLTA_a425a6ec-a962-44ac-be34-d579de8353e9"
      unitRef="usd">5901000</us-gaap:InterestExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE1LTEtMS0xLTA_438c6c4a-749d-4a94-8127-5602bbe3904f"
      unitRef="usd">-924000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE1LTMtMS0xLTA_2341eafc-48d0-4135-9e3c-170105a072b4"
      unitRef="usd">653000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE1LTUtMS0xLTA_5df8dd31-bda3-41e5-9202-ba819dbebf1c"
      unitRef="usd">-1031000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE1LTctMS0xLTA_919a088f-077d-4520-94aa-7da6cedb21b8"
      unitRef="usd">-2534000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:GainLossOnDerivativeInstrumentsNetPretax
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE2LTEtMS0xLTY2Mzk_b3494a59-66dd-4aac-98f6-e2d9ca60c8b7"
      unitRef="usd">15344000</us-gaap:GainLossOnDerivativeInstrumentsNetPretax>
    <us-gaap:GainLossOnDerivativeInstrumentsNetPretax
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE2LTMtMS0xLTY2Mzk_7fe28015-7730-436c-a5d8-bc3b0e15077c"
      unitRef="usd">-59692000</us-gaap:GainLossOnDerivativeInstrumentsNetPretax>
    <us-gaap:GainLossOnDerivativeInstrumentsNetPretax
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE2LTUtMS0xLTY2Mzk_ddbda6c8-a34d-4de2-bba7-45bebc9e1c18"
      unitRef="usd">0</us-gaap:GainLossOnDerivativeInstrumentsNetPretax>
    <us-gaap:GainLossOnDerivativeInstrumentsNetPretax
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE2LTctMS0xLTY2Mzk_37d8a771-c208-4690-af1c-7bdb98c14ba6"
      unitRef="usd">0</us-gaap:GainLossOnDerivativeInstrumentsNetPretax>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE2LTEtMS0xLTA_060d78df-cc11-4345-a5f3-8c88fa4cb63e"
      unitRef="usd">12356000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE2LTMtMS0xLTA_8de7d27f-de0e-4fd2-bb44-866ddc778973"
      unitRef="usd">-64709000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE2LTUtMS0xLTA_c89f31bd-c95f-4183-b639-a202b35e8218"
      unitRef="usd">-6914000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzE2LTctMS0xLTA_b7c175bb-1d65-4793-8594-4d57cc554336"
      unitRef="usd">-7762000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIwLTEtMS0xLTA_1896ed9f-1e18-40df-ba37-e4bfab9d6f86"
      unitRef="usd">57068000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIwLTMtMS0xLTA_b4301cb3-e486-470a-b9c6-9d6ca8b73c6b"
      unitRef="usd">-53855000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIwLTUtMS0xLTA_e2ef3feb-9e1d-4dee-a8a8-cf22a4ccd75c"
      unitRef="usd">44845000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIwLTctMS0xLTA_7a6d6a88-3d81-49c6-a6bf-c0d86b9fa66e"
      unitRef="usd">71352000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIxLTEtMS0xLTA_95642c1d-cb7b-4205-a76e-027cc0250f6e"
      unitRef="usd">-11868000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIxLTMtMS0xLTA_2239700c-0ce1-46e7-a029-5d7701088781"
      unitRef="usd">-6561000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIxLTUtMS0xLTA_53df4ecf-544a-4c35-aade-7d3e4c230b88"
      unitRef="usd">5483000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIxLTctMS0xLTA_64ea6176-3e6f-44ad-9e1c-d752cb480aac"
      unitRef="usd">-1639000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIyLTEtMS0xLTA_50ba5f9d-bcd6-41ae-b412-7ef70401a777"
      unitRef="usd">68936000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIyLTMtMS0xLTA_f5d2f1e0-c881-4a10-8853-14ad41f5f93a"
      unitRef="usd">-47294000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIyLTUtMS0xLTA_f8efabab-ea71-4393-98d4-666505012d6d"
      unitRef="usd">39362000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIyLTctMS0xLTA_338488aa-0404-421a-949c-163c8fb9b047"
      unitRef="usd">72991000</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIzLTEtMS0xLTA_ef1528ef-9d42-4953-9068-ba1865e5b72d"
      unitRef="usdPerShare">0.56</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIzLTMtMS0xLTA_eb0e2fc9-ee99-4f60-a874-48b4eb112fb5"
      unitRef="usdPerShare">-0.38</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIzLTUtMS0xLTA_b7b88cbf-ced3-4b1c-8ecf-4a7b51f000c6"
      unitRef="usdPerShare">0.31</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzIzLTctMS0xLTA_d34a301f-9f83-4b95-933c-827d806b8f60"
      unitRef="usdPerShare">0.57</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="ia7951a79ab4546f4bff41e7a0645da27_D20200101-20200331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzI0LTEtMS0xLTA_3c2ecf2f-db91-4928-9dd2-0c4c11777cb5"
      unitRef="usdPerShare">0.50</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="id000b2484cd9445c8fe484bb057fa35e_D20200401-20200630"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzI0LTMtMS0xLTA_2a5516d8-495d-4a46-8cf2-5f887e2c0e26"
      unitRef="usdPerShare">-0.38</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i55edcaa2919546f7ae0ab90d0ca4c25d_D20200701-20200930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzI0LTUtMS0xLTA_e3cbfc46-3e3b-44f9-be4c-f5d8dafd877c"
      unitRef="usdPerShare">0.28</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="ibdf0fe976ed144f894bdf2b69ceb31ea_D20201001-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpmZTFmOGM2MzE2NjU0NmZkOTBlYzVmNWU3OTMxY2JjZC90YWJsZXJhbmdlOmZlMWY4YzYzMTY2NTQ2ZmQ5MGVjNWY1ZTc5MzFjYmNkXzI0LTctMS0xLTA_9a633930-431e-4dcf-b455-655a9fbc3bb1"
      unitRef="usdPerShare">0.50</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzItMS0xLTEtMA_ce0f07f4-e666-4e8d-8e0f-ec8625510b66"
      unitRef="usd">100150000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzItMy0xLTEtMA_59fc2a54-d62d-43b6-934e-0b12778308bd"
      unitRef="usd">134094000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzItNS0xLTEtMA_9517726d-9376-4c18-ab0f-8cce1528540f"
      unitRef="usd">180057000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzItNy0xLTEtMA_762fa5e2-2f45-438c-b4e7-7d77748a60d0"
      unitRef="usd">210032000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfRevenue
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzMtMS0xLTEtMA_4477845a-5a3e-44ad-acaa-b4270df5ce2c"
      unitRef="usd">66811000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzMtMy0xLTEtMA_0374b1c3-9c37-4225-bd13-482048066ecc"
      unitRef="usd">88775000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzMtNS0xLTEtMA_0c2e4b20-ea00-4f41-be5a-75f0c54d29bf"
      unitRef="usd">115351000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzMtNy0xLTEtMA_3d3969e7-a3fe-48f5-8472-1f873f48e1af"
      unitRef="usd">132151000</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzQtMS0xLTEtMA_970ca121-3c30-42b8-9b93-92147c0e1994"
      unitRef="usd">33339000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzQtMy0xLTEtMA_c3b23dcc-7676-4e66-99b5-fe053e4d4810"
      unitRef="usd">45319000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzQtNS0xLTEtMA_dcc7c23a-6248-4d28-9bf5-246846f2fec2"
      unitRef="usd">64706000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzQtNy0xLTEtMA_840ec9ad-98cf-412b-959e-ea7bcff0e4b0"
      unitRef="usd">77881000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzYtMS0xLTEtMA_add51d58-16d5-4421-9d3c-77e8cef1d121"
      unitRef="usd">8524000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzYtMy0xLTEtMA_ad2b257c-51b6-400c-9305-94d5d710131d"
      unitRef="usd">9604000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzYtNS0xLTEtMA_ed615b4b-2f97-4799-a2b7-21859b018f43"
      unitRef="usd">11085000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzYtNy0xLTEtMA_507a38b9-a520-4857-ad13-cd8cc8db0a5b"
      unitRef="usd">11168000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzctMS0xLTEtMA_93c7e827-5649-4dcb-8304-1fd704ced62f"
      unitRef="usd">7433000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzctMy0xLTEtMA_ff31ffee-156d-457f-af67-f2dcd7d2d497"
      unitRef="usd">9054000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzctNS0xLTEtMA_99c4255a-318c-4902-83a3-925df35d4f06"
      unitRef="usd">9551000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzctNy0xLTEtMA_e40cc9ae-9f9a-4cc7-9ba1-b509acc44862"
      unitRef="usd">10690000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzgtMS0xLTEtMA_f8f204d4-f124-48e3-bb45-7e80d2d01d64"
      unitRef="usd">9880000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzgtMy0xLTEtMA_45eb9942-7dca-4ada-902b-176cfe6d7f75"
      unitRef="usd">8583000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzgtNS0xLTEtMA_4aad029a-972f-4aba-b776-dfca4b82b7a3"
      unitRef="usd">9895000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzgtNy0xLTEtMA_b433bbda-48b9-4ea9-9845-608237daa626"
      unitRef="usd">10450000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:RestructuringCharges
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzktMS0xLTEtMA_bd45a6a8-4c2e-42ad-bc47-549c876ce22c"
      unitRef="usd">368000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzktMy0xLTEtMA_6e492051-88e3-481d-87ee-b6985019afd3"
      unitRef="usd">631000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzktNS0xLTEtMA_8bfeeec9-a495-4b37-864e-9c720c22f984"
      unitRef="usd">469000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzktNy0xLTEtMA_d931a02e-4307-4517-87ed-92a7533ebc25"
      unitRef="usd">1131000</us-gaap:RestructuringCharges>
    <us-gaap:OperatingExpenses
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzEwLTEtMS0xLTA_05585864-9f45-4b35-932d-1caab7d0bba3"
      unitRef="usd">26205000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzEwLTMtMS0xLTA_317d9c59-ada0-4a90-92c9-7205fc53f782"
      unitRef="usd">27872000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzEwLTUtMS0xLTA_8c853ce7-4f62-4794-b41f-6c41bac921d5"
      unitRef="usd">31000000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzEwLTctMS0xLTA_5beef4d4-350e-4f4d-9be9-af9c097c22bf"
      unitRef="usd">33439000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzExLTEtMS0xLTA_328b1af7-1881-44b5-9ee7-20c9db7b11c7"
      unitRef="usd">7134000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzExLTMtMS0xLTA_d0d1820d-0bdf-48c4-86e9-b552671c94a9"
      unitRef="usd">17447000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzExLTUtMS0xLTA_0547debc-f703-45cd-851f-ef70179773fb"
      unitRef="usd">33706000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzExLTctMS0xLTA_a14f2cf8-bce8-4efa-8eaa-84f9c0aeef8e"
      unitRef="usd">44442000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeDepositsWithFinancialInstitutions
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzEzLTEtMS0xLTA_43a795e5-f466-4a8c-aa24-fa33b77fc314"
      unitRef="usd">211000</us-gaap:InterestIncomeDepositsWithFinancialInstitutions>
    <us-gaap:InterestIncomeDepositsWithFinancialInstitutions
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzEzLTMtMS0xLTA_22a8789f-2f81-4e70-8922-96b2acc4349e"
      unitRef="usd">593000</us-gaap:InterestIncomeDepositsWithFinancialInstitutions>
    <us-gaap:InterestIncomeDepositsWithFinancialInstitutions
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzEzLTUtMS0xLTA_2857bc4f-278a-4a18-9138-3d2ee8d1f71e"
      unitRef="usd">894000</us-gaap:InterestIncomeDepositsWithFinancialInstitutions>
    <us-gaap:InterestIncomeDepositsWithFinancialInstitutions
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzEzLTctMS0xLTA_57a0a415-8003-44c3-b51b-a38976f4aa9b"
      unitRef="usd">815000</us-gaap:InterestIncomeDepositsWithFinancialInstitutions>
    <us-gaap:InterestExpense
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE0LTEtMS0xLTA_46e77193-a802-4e11-9a9c-f0fc8d1c55df"
      unitRef="usd">3751000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE0LTMtMS0xLTA_92afc7ea-b46d-48db-9eed-9309f36c06da"
      unitRef="usd">1351000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE0LTUtMS0xLTA_529f9a50-cbc9-4b12-b20c-1d347b61f732"
      unitRef="usd">2286000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE0LTctMS0xLTA_3463ae8a-6069-43a6-810c-5d4a2a0ca29c"
      unitRef="usd">2303000</us-gaap:InterestExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE1LTEtMS0xLTA_1299a34d-258e-4b06-8caf-1697a8a0f8cf"
      unitRef="usd">-481000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE1LTMtMS0xLTA_956fc3c2-4659-47c7-b43e-b34860fa4207"
      unitRef="usd">-5480000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE1LTUtMS0xLTA_c00ef985-3872-4a87-a0d1-67a884aac709"
      unitRef="usd">-943000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE1LTctMS0xLTA_b67cef4b-1479-42c9-b9f3-70f9fac53fcf"
      unitRef="usd">1467000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE2LTEtMS0xLTA_71ddfec5-05d8-4afc-b523-cee2a1d555d2"
      unitRef="usd">-4021000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE2LTMtMS0xLTA_39b205cf-7922-49e2-91a3-9cf0a32a4a02"
      unitRef="usd">-6238000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE2LTUtMS0xLTA_d1322956-cd24-4340-a138-2b0fd2a244d2"
      unitRef="usd">-2335000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE2LTctMS0xLTA_b2386571-883b-4335-b238-70b43322d396"
      unitRef="usd">-21000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE5LTEtMS0xLTA_ee3132fc-8f9f-4463-b4a8-0c7c12802298"
      unitRef="usd">3113000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE5LTMtMS0xLTA_997d4a77-0f39-46e2-b2cf-65995134f332"
      unitRef="usd">11209000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE5LTUtMS0xLTA_779ed542-c4ee-48a7-a59e-d004e1e0926b"
      unitRef="usd">31371000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzE5LTctMS0xLTA_e2383e62-798c-4d3e-a805-886f8e98582b"
      unitRef="usd">44421000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIwLTEtMS0xLTA_c4c01ace-263f-47a2-8df1-f419bf91c52f"
      unitRef="usd">348000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIwLTMtMS0xLTA_5184ddbd-fb65-46aa-a9f6-97ded16b137a"
      unitRef="usd">591000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIwLTUtMS0xLTA_cee5fdf5-721a-4e31-9b84-501e97865583"
      unitRef="usd">272000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIwLTctMS0xLTA_e794264e-9d56-4328-a4ae-f326d7c356f2"
      unitRef="usd">-72245000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIxLTEtMS0xLTA_d73e4f71-c2d9-4ff7-a117-152a65fa86f5"
      unitRef="usd">2765000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIxLTMtMS0xLTA_7d91fcb9-1c4d-483c-8886-67ec815bed4c"
      unitRef="usd">10618000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIxLTUtMS0xLTA_a9dd88e5-ef3e-4850-bdfa-c3a29114ee83"
      unitRef="usd">31099000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIxLTctMS0xLTA_488a97ee-fad6-4647-9d1a-593166d2255d"
      unitRef="usd">116666000</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIyLTEtMS0xLTA_fc2d5ec2-7f0f-4d2d-8161-db36b261e04d"
      unitRef="usdPerShare">0.03</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIyLTMtMS0xLTA_d861d9f3-2b4b-4345-9cd9-94a151aa70f4"
      unitRef="usdPerShare">0.09</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIyLTUtMS0xLTA_8ab5d0cc-2620-4ec0-90b7-47d6bb208365"
      unitRef="usdPerShare">0.25</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIyLTctMS0xLTA_71cd3c43-dfd6-4682-bc8f-e993b3454c40"
      unitRef="usdPerShare">0.95</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i0e8196dd5da14d6f8a836dcb4f4b6110_D20190101-20190331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIzLTEtMS0xLTA_37c55cf5-07cb-4617-bbee-727fa621bed3"
      unitRef="usdPerShare">0.02</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i90125b10a4f64b3999fdb1d8a4659226_D20190401-20190630"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIzLTMtMS0xLTA_4c9261ff-35c1-4583-a387-fb56c4772ff9"
      unitRef="usdPerShare">0.08</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i162f174c04ce41a7bab3019c30001087_D20190701-20190930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIzLTUtMS0xLTA_7a7f55d3-39fc-43e5-803b-41e2f9c48dcf"
      unitRef="usdPerShare">0.23</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="iacf1bd3cc351405ab397a9e26b7101fa_D20191001-20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmI1MWFjMDc4OTQ0ZjQwYWFiY2I1MjllYzUxOTU1Y2NmL3NlYzpiNTFhYzA3ODk0NGY0MGFhYmNiNTI5ZWM1MTk1NWNjZl8zMDcvZnJhZzo5NDAyNTlkMzZhNjc0NGQyYjZiNWUwZDFjMGJmMjBmOS90YWJsZTpjNzc3ZmEzMjZmNjc0NzNhODAwZDVjZWVjMmJhYzQxMy90YWJsZXJhbmdlOmM3NzdmYTMyNmY2NzQ3M2E4MDBkNWNlZWMyYmFjNDEzXzIzLTctMS0xLTA_833513f0-32ae-4c80-8b2e-58eebbd804a5"
      unitRef="usdPerShare">0.88</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
</xbrl>
