Commitments and Contingencies (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2021
Dec. 31, 2020
Dec. 31, 2019
Jul. 31, 2020
Jul. 31, 2019
Oct. 31, 2017
Commitments and Contingencies            
Lease expense $ 17,700 $ 12,500 $ 11,500      
Operating lease commitments            
Total future payments for recognized leasing assets 86,947          
Less than One Year 11,271          
One to Three Years 21,190          
Three to Five Years 20,175          
More than Five Years 34,311          
Purchase commitments            
Total 619,928          
Less than One Year 588,882          
One to Three Years 28,653          
Three to Five Years 2,268          
More than Five Years 125          
Unsecured senior notes            
2022, 2024 and 2030 Notes            
Aggregate principal amount $ 800,000       $ 800,000  
Interest rate (as a percent) 3.50%       3.50%  
Unsecured senior notes | 2030 Notes            
2022, 2024 and 2030 Notes            
Aggregate principal amount $ 750,000     $ 750,000    
Interest rate (as a percent) 3.375%     3.375%    
Convertible notes            
2022, 2024 and 2030 Notes            
Total $ 2,773,054          
Less than One Year 964,554          
One to Three Years 906,625          
Three to Five Years 50,625          
More than Five Years 851,250          
Convertible notes | 2022 Notes            
2022, 2024 and 2030 Notes            
Aggregate principal amount $ 900,000         $ 900,000
Interest rate (as a percent) 1.25%         1.25%
Total $ 911,242          
Less than One Year 911,242          
One to Three Years 0          
Three to Five Years 0          
More than Five Years 0          
Convertible notes | 2024 Notes            
2022, 2024 and 2030 Notes            
Total 884,000          
Less than One Year 28,000          
One to Three Years 856,000          
Three to Five Years 0          
More than Five Years 0          
Convertible notes | 2030 Notes            
2022, 2024 and 2030 Notes            
Total 977,812          
Less than One Year 25,312          
One to Three Years 50,625          
Three to Five Years 50,625          
More than Five Years $ 851,250