v3.25.1
Derivative financial instruments - Outstanding Currency, Forward Exchange Contracts (Details) - USD ($)
$ in Thousands
Apr. 30, 2025
Apr. 30, 2024
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts $ 852,403  
Foreign Currency Forward Contracts | Notional Sell Amounts    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 219,389 $ 184,014
Foreign Currency Forward Contracts | Notional Sell Amounts | Euro    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 152,965 137,867
Foreign Currency Forward Contracts | Notional Sell Amounts | British pound    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 20,659 17,490
Foreign Currency Forward Contracts | Notional Sell Amounts | Mexican Peso    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 3,413 927
Foreign Currency Forward Contracts | Notional Sell Amounts | Japanese yen    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 27,285 18,665
Foreign Currency Forward Contracts | Notional Sell Amounts | Hong Kong dollar    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 1,296 3,739
Foreign Currency Forward Contracts | Notional Sell Amounts | Australian dollar    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 1,085 331
Foreign Currency Forward Contracts | Notional Sell Amounts | Singapore dollar    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 1,667 109
Foreign Currency Forward Contracts | Notional Sell Amounts | Taiwan Dollar    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 0 0
Foreign Currency Forward Contracts | Notional Sell Amounts | Others    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 11,019 4,886
Foreign Currency Forward Contracts | Notional Sell Amounts    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 567,038 517,911
Foreign Currency Forward Contracts | Notional Sell Amounts | Euro    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 216,275 145,019
Foreign Currency Forward Contracts | Notional Sell Amounts | British pound    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 171,023 181,427
Foreign Currency Forward Contracts | Notional Sell Amounts | Mexican Peso    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 25,522 32,979
Foreign Currency Forward Contracts | Notional Sell Amounts | Japanese yen    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 33,238 27,588
Foreign Currency Forward Contracts | Notional Sell Amounts | Hong Kong dollar    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 5,691 7,438
Foreign Currency Forward Contracts | Notional Sell Amounts | Australian dollar    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 9,568 9,441
Foreign Currency Forward Contracts | Notional Sell Amounts | Singapore dollar    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 26,579 19,867
Foreign Currency Forward Contracts | Notional Sell Amounts | Taiwan Dollar    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts 8,000 8,000
Foreign Currency Forward Contracts | Notional Sell Amounts | Others    
Derivative [Line Items]    
Notional Amounts of foreign currency derivative contracts $ 71,142 $ 86,152