[{"inputs":[{"internalType":"contract IUniswapRouter","name":"_router","type":"address"},{"internalType":"address","name":"_weth","type":"address"},{"internalType":"address","name":"_wmatic","type":"address"},{"internalType":"bytes32","name":"_codeHash","type":"bytes32"},{"internalType":"address","name":"_symphony","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"FACTORY","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"FACTORY_CODE_HASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WETH","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WMATIC","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"address","name":"inputToken","type":"address"},{"internalType":"address","name":"outputToken","type":"address"},{"internalType":"uint256","name":"inputAmount","type":"uint256"},{"internalType":"uint256","name":"minReturnAmount","type":"uint256"},{"internalType":"uint256","name":"stoplossAmount","type":"uint256"},{"internalType":"uint256","name":"shares","type":"uint256"}],"internalType":"struct IOrderStructs.Order","name":"order","type":"tuple"},{"internalType":"uint256","name":"oracleAmount","type":"uint256"},{"internalType":"uint256","name":"feePercent","type":"uint256"},{"internalType":"uint256","name":"protcolFeePercent","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"address","name":"treasury","type":"address"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"handle","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_inputToken","type":"address"},{"internalType":"address","name":"_outputToken","type":"address"},{"internalType":"uint256","name":"_inputAmount","type":"uint256"},{"internalType":"uint256","name":"_minReturnAmount","type":"uint256"},{"internalType":"uint256","name":"_stoplossAmount","type":"uint256"},{"internalType":"uint256","name":"_oracleAmount","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"simulate","outputs":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"uint256","name":"amountOut","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symphony","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]