v3.20.2

Goodwill and Intangible Assets - Schedule of Intangible Assets (Details) - USD ($) $ in Thousands | Jun. 30, 2020 | Dec. 31, 2019
--- | --- | ---
Acquired Finite-Lived Intangible Assets [Line Items] |  |
Intangible assets, gross | $ 283,236 | $ 249,070
Less: accumulated amortization | (119,379) | (105,220)
Intangible assets, net | 163,857 | 143,850
Remainder of 2020 | 20,883 |
2021 | 40,684 |
2022 | 36,547 |
2023 | 31,396 |
2024 | 26,228 |
Thereafter | 8,119 |
Total future amortization expense | 163,857 |
Developed technology |  |
Acquired Finite-Lived Intangible Assets [Line Items] |  |
Intangible assets, gross | 212,533 | 177,746
Patents |  |
Acquired Finite-Lived Intangible Assets [Line Items] |  |
Intangible assets, gross | 67,109 | 67,730
Other |  |
Acquired Finite-Lived Intangible Assets [Line Items] |  |
Intangible assets, gross | $ 3,594 | $ 3,594

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 30 -Section 50 -Paragraph 2 -Subparagraph (a)(1) -URI http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275 + Details
Name: | us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach). + References No definition available. + Details
Name: | us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 30 -Section 50 -Paragraph 2 -Subparagraph (a)(3) -URI http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275 + Details
Name: | us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in remainder of current fiscal year. + References No definition available. + Details
Name: | us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 30 -Section 50 -Paragraph 2 -Subparagraph (a)(3) -URI http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275 + Details
Name: | us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 30 -Section 50 -Paragraph 2 -Subparagraph (a)(3) -URI http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275 + Details
Name: | us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 30 -Section 50 -Paragraph 2 -Subparagraph (a)(3) -URI http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275 + Details
Name: | us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 926 -SubTopic 20 -Section 50 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 30 -Section 50 -Paragraph 2 -Subparagraph (a)(1) -URI http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275 + Details
Name: | us-gaap_FiniteLivedIntangibleAssetsNet
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount before accumulated amortization of intangible assets, excluding goodwill. + References No definition available. + Details
Name: | us-gaap_IntangibleAssetsGrossExcludingGoodwill
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 30 -Section 50 -Paragraph 2 -Subparagraph ((a)(1),(b)) -URI http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 30 -Section 45 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274 + Details
Name: | us-gaap_IntangibleAssetsNetExcludingGoodwill
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Details
Name: | us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OtherIntangibleAssetsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |