XML 137 R78.htm IDEA: XBRL DOCUMENT
v3.22.0.1

Intangible Assets - Schedule of Gross Amount and Accumulated Amortization of Intangible Assets (Details) - USD ($) $ in Thousands | 12 Months Ended |
--- | --- | ---
Dec. 31, 2021 | Dec. 31, 2020
Acquired Finite Lived Intangible Assets [Line Items] |  |
Gross Carrying Amount | $ 602,418 | $ 537,218
Accumulated Amortization | (394,597) | (291,260)
Net Carrying Amount | 207,821 | 245,958
Backlog |  |
Acquired Finite Lived Intangible Assets [Line Items] |  |
Gross Carrying Amount | 169,455 | 145,855
Accumulated Amortization | (126,637) | (101,038)
Net Carrying Amount | $ 42,818 | 44,817
Amortization Period (in years) | 3 years |
Customer Relationships |  |
Acquired Finite Lived Intangible Assets [Line Items] |  |
Gross Carrying Amount | $ 301,829 | 264,129
Accumulated Amortization | (158,405) | (110,450)
Net Carrying Amount | $ 143,424 | 153,679
Amortization Period (in years) | 8 years |
Leases |  |
Acquired Finite Lived Intangible Assets [Line Items] |  |
Gross Carrying Amount | $ 670 | 670
Accumulated Amortization | (618) | (599)
Net Carrying Amount | $ 52 | 71
Amortization Period (in years) | 5 years |
Developed Technology |  |
Acquired Finite Lived Intangible Assets [Line Items] |  |
Gross Carrying Amount | $ 113,939 | 112,039
Accumulated Amortization | (96,765) | (68,968)
Net Carrying Amount | $ 17,174 | 43,071
Amortization Period (in years) | 4 years |
Trade Name |  |
Acquired Finite Lived Intangible Assets [Line Items] |  |
Gross Carrying Amount | $ 9,200 | 8,200
Accumulated Amortization | (8,444) | (7,967)
Net Carrying Amount | $ 756 | 233
Amortization Period (in years) | 1 year |
Non compete Agreements |  |
Acquired Finite Lived Intangible Assets [Line Items] |  |
Gross Carrying Amount | $ 5,250 | 4,250
Accumulated Amortization | (3,523) | (2,043)
Net Carrying Amount | $ 1,727 | 2,207
Amortization Period (in years) | 3 years |
In Process Research and Development |  |
Acquired Finite Lived Intangible Assets [Line Items] |  |
Gross Carrying Amount | $ 1,800 | 1,800
Accumulated Amortization |  | 0
Net Carrying Amount | 1,800 | 1,800
Other Intangibles |  |
Acquired Finite Lived Intangible Assets [Line Items] |  |
Gross Carrying Amount | 275 | 275
Accumulated Amortization | (205) | (195)
Net Carrying Amount | $ 70 | $ 80
Amortization Period (in years) | 10 years |

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 Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 30 -Section 50 -Paragraph 1 -Subparagraph (a)(3) -URI http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275 + Details
Name: | us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
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 before 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 928 -SubTopic 340 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004 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_FiniteLivedIntangibleAssetsGross
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
- Details
Name: | us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OrderOrProductionBacklogMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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

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

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_TradeNamesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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

X
- Details
Name: | us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_InProcessResearchAndDevelopmentMember
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: |