Quarterly report pursuant to Section 13 or 15(d)

Revenue and Cost of Revenues - Obligation (Details)

v3.20.2
Revenue and Cost of Revenues - Obligation (Details)
$ in Thousands
Jun. 30, 2020
USD ($)
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 568,108
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-07-01  
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 114,905
Remaining Performance Obligations  
Revenue recognition period 6 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-01-01  
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 181,322
Remaining Performance Obligations  
Revenue recognition period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-01-01  
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 135,410
Remaining Performance Obligations  
Revenue recognition period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-01-01  
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 65,759
Remaining Performance Obligations  
Revenue recognition period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-01-01  
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 35,319
Remaining Performance Obligations  
Revenue recognition period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-01-01  
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 35,393
Remaining Performance Obligations  
Revenue recognition period