- Notional Amount (Details) - USD ($) $ in Thousands |
12 Months Ended |
|
Dec. 31, 2019 |
Dec. 31, 2018 |
| Derivative [Line Items] |
|
|
| Derivative term |
1 month
|
|
| Designated as hedging instruments | Cash Flow Hedging | Foreign currency forward contracts |
|
|
| Derivative [Line Items] |
|
|
| Notional amount of foreign currency forward contract |
$ 728,386
|
$ 505,218
|
| Designated as hedging instruments | Cash Flow Hedging | Foreign currency forward contracts | Euro |
|
|
| Derivative [Line Items] |
|
|
| Notional amount of foreign currency forward contract |
501,197
|
335,179
|
| Designated as hedging instruments | Cash Flow Hedging | Foreign currency forward contracts | Australian dollar |
|
|
| Derivative [Line Items] |
|
|
| Notional amount of foreign currency forward contract |
89,705
|
52,820
|
| Designated as hedging instruments | Cash Flow Hedging | Foreign currency forward contracts | British pound sterling |
|
|
| Derivative [Line Items] |
|
|
| Notional amount of foreign currency forward contract |
87,032
|
73,460
|
| Designated as hedging instruments | Cash Flow Hedging | Foreign currency forward contracts | Canadian dollar |
|
|
| Derivative [Line Items] |
|
|
| Notional amount of foreign currency forward contract |
$ 50,452
|
$ 43,759
|