diff --git a/.gitignore b/.gitignore index 47ab1f2..e0120d4 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,6 @@ out/ # OS .DS_Store + +# Git worktrees +*.worktrees/ diff --git a/README.md b/README.md index 0c5b2c0..fb376e8 100644 --- a/README.md +++ b/README.md @@ -788,10 +788,13 @@ sequenceDiagram Required environment variables: - `DEPLOYER_PRIVATE_KEY`: Private key for deployment transactions - `SERVER_ADDRESS`: Backend server address -- `ADMIN_ADDRESS`: The admin address for the contract - `RPC_NODE_URL_8453`: Base network RPC endpoint - `ETHERSCAN_API_KEY`: For contract verification (optional) +Notes: +- `Deploy.s.sol` currently has swap router/factory addresses hardcoded for Base mainnet (`chainId == 8453`) +- `Deploy.s.sol` is selective and only deploys contracts with missing/zero addresses in `deployments.json` + ### Deploy @@ -808,11 +811,22 @@ Deployment addresses saved to `deployments.json`. # Register ERC4626 vaults forge script script/RegisterVault.s.sol:RegisterVaultScript --rpc-url $RPC_NODE_URL_8453 --broadcast --sig "run(address,string)" erc4626 -# Register 0x swap target -forge script script/RegisterVault.s.sol:RegisterVaultScript --rpc-url $RPC_NODE_URL_8453 --broadcast --sig "run(address,string)" 0x0000000000001fF3684f28c67538d4D072C22734 zerox - +# Register other vaults +forge script script/RegisterVault.s.sol:RegisterVaultScript --rpc-url $RPC_NODE_URL_8453 --broadcast --sig "run(address,string)" 0x4e65fE4DbA92790696d040ac24Aa414708F5c0AB aave +forge script script/RegisterVault.s.sol:RegisterVaultScript --rpc-url $RPC_NODE_URL_8453 --broadcast --sig "run(address,string)" 0xb125E6687d4313864e53df431d5425969c15Eb2F compound +forge script script/RegisterVault.s.sol:RegisterVaultScript --rpc-url $RPC_NODE_URL_8453 --broadcast --sig "run(address,string)" 0xEdc817A28E8B93B03976FBd4a3dDBc9f7D176c22 moonwell + +# Rgister UniswapV3 router +forge script script/RegisterVault.s.sol:RegisterVaultScript --rpc-url $RPC_NODE_URL_8453 --broadcast --sig "run(address,string)" 0x2626664c2603336E57B271c5C0b26F421741e481 uniswapv3 +# Rgister AerodromeV2 router +forge script script/RegisterVault.s.sol:RegisterVaultScript --rpc-url $RPC_NODE_URL_8453 --broadcast --sig "run(address,string)" 0xcF77a3Ba9A5CA399B7c97c74d54e5b1Beb874E43 aerodromev2 +# Rgister AerodromeCL router +forge script script/RegisterVault.s.sol:RegisterVaultScript --rpc-url $RPC_NODE_URL_8453 --broadcast --sig "run(address,string)" 0xBE6D8f0d05cC4be24d5167a3eF062215bE6D18a5 aerodromecl # Register Merkl forge script script/RegisterVault.s.sol:RegisterVaultScript --rpc-url $RPC_NODE_URL_8453 --broadcast --sig "run(address,string)" 0x3Ef3D8bA38EBe18DB133cEc108f4D14CE00Dd9Ae merkl + +# Add sellable tokens to the swap sell policy (tokens that agents are allowed to swap) +forge script script/AddSellableTokens.s.sol:AddSellableTokensScript --rpc-url $RPC_NODE_URL_8453 --broadcast --sig "run(address[])" "[, , ...]" ``` (temp) test with: diff --git a/broadcast/AddSellableTokens.s.sol/8453/run-1771018257824.json b/broadcast/AddSellableTokens.s.sol/8453/run-1771018257824.json new file mode 100644 index 0000000..923a1f0 --- /dev/null +++ b/broadcast/AddSellableTokens.s.sol/8453/run-1771018257824.json @@ -0,0 +1,175 @@ +{ + "transactions": [ + { + "hash": "0x61cade08cfa18bb5c6682db6f94e6193c6d0bce8f325c69558b00e2660f9dc38", + "transactionType": "CALL", + "contractName": null, + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "schedule(address,uint256,bytes,bytes32,bytes32,uint256)", + "arguments": [ + "0x153e4801852249d1f7D05CCB13c1D1CF8AE7c466", + "0", + "0x99b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf267774", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f", + "0" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x1339b", + "value": "0x0", + "input": "0x01d5062a000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c466000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000000246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006499b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf26777400000000000000000000000000000000000000000000000000000000", + "nonce": "0x2d", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xfa1cc85ceb61494857cc9719cf2721d4e3443c40191211dfe982a2a03c7d74a9", + "transactionType": "CALL", + "contractName": null, + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "execute(address,uint256,bytes,bytes32,bytes32)", + "arguments": [ + "0x153e4801852249d1f7D05CCB13c1D1CF8AE7c466", + "0", + "0x99b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf267774", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x28318", + "value": "0x0", + "input": "0x134008d3000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c466000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f000000000000000000000000000000000000000000000000000000000000006499b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf26777400000000000000000000000000000000000000000000000000000000", + "nonce": "0x2e", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x25a1abc", + "logs": [ + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0x0083b1a04ab4ed228c6f5368661700f19d7bff61b4ec91afde90cf6fbc9511e0", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c466000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006499b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf26777400000000000000000000000000000000000000000000000000000000", + "blockHash": "0x369caf199f05644370b644110b6125d6e287709695ba1ec4549036219be03534", + "blockNumber": "0x2829d96", + "blockTimestamp": "0x698f980f", + "transactionHash": "0xfa1cc85ceb61494857cc9719cf2721d4e3443c40191211dfe982a2a03c7d74a9", + "transactionIndex": "0x60", + "logIndex": "0x208", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", + "0x0083b1a04ab4ed228c6f5368661700f19d7bff61b4ec91afde90cf6fbc9511e0" + ], + "data": "0x246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f", + "blockHash": "0x369caf199f05644370b644110b6125d6e287709695ba1ec4549036219be03534", + "blockNumber": "0x2829d96", + "blockTimestamp": "0x698f980f", + "transactionHash": "0xfa1cc85ceb61494857cc9719cf2721d4e3443c40191211dfe982a2a03c7d74a9", + "transactionIndex": "0x60", + "logIndex": "0x209", + "removed": false + } + ], + "logsBloom": "0x00000080000000000000000040000000000000000000000000000000000000000000000000000000000000000000000100000000800000000000000000000000000000000000000000800000000000000000000000000008000000000000400000000000020000000000000000000800000080000000000000000400001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000400000000000000020000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0xfa1cc85ceb61494857cc9719cf2721d4e3443c40191211dfe982a2a03c7d74a9", + "transactionIndex": "0x60", + "blockHash": "0x369caf199f05644370b644110b6125d6e287709695ba1ec4549036219be03534", + "blockNumber": "0x2829d96", + "gasUsed": "0xdeb4", + "effectiveGasPrice": "0x3f1f5c", + "blobGasUsed": "0x56e0", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x33c603", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x37924040", + "l1GasPrice": "0x3a518dd", + "l1GasUsed": "0xa0a" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x25bd275", + "logs": [ + { + "address": "0x153e4801852249d1f7d05ccb13c1d1cf8ae7c466", + "topics": [ + "0x4ac723403fd9e3f5fbe7116bb75c15981bd5cb9ca32255900e5c29d9597cbee2", + "0x000000000000000000000000590830dfdf9a3f68afcdde2694773debdf267774" + ], + "data": "0x", + "blockHash": "0x369caf199f05644370b644110b6125d6e287709695ba1ec4549036219be03534", + "blockNumber": "0x2829d96", + "blockTimestamp": "0x698f980f", + "transactionHash": "0x61cade08cfa18bb5c6682db6f94e6193c6d0bce8f325c69558b00e2660f9dc38", + "transactionIndex": "0x61", + "logIndex": "0x20a", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0x0083b1a04ab4ed228c6f5368661700f19d7bff61b4ec91afde90cf6fbc9511e0", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c46600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000006499b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf26777400000000000000000000000000000000000000000000000000000000", + "blockHash": "0x369caf199f05644370b644110b6125d6e287709695ba1ec4549036219be03534", + "blockNumber": "0x2829d96", + "blockTimestamp": "0x698f980f", + "transactionHash": "0x61cade08cfa18bb5c6682db6f94e6193c6d0bce8f325c69558b00e2660f9dc38", + "transactionIndex": "0x61", + "logIndex": "0x20b", + "removed": false + } + ], + "logsBloom": "0x00000080000000000000000000000001000000000000000000000000000000000000000100000000000000000000000000000000000800400000000000000000000000000000010000800000000000000000000000000000000000000000402000000000020000000000000000000800000000000000000000000400001000000000000000000000000000000000000000000000000000040010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000001000000000000000000000000000000020000000000000000000004000000000000000000000000000000000000820000000", + "type": "0x2", + "transactionHash": "0x61cade08cfa18bb5c6682db6f94e6193c6d0bce8f325c69558b00e2660f9dc38", + "transactionIndex": "0x61", + "blockHash": "0x369caf199f05644370b644110b6125d6e287709695ba1ec4549036219be03534", + "blockNumber": "0x2829d96", + "gasUsed": "0x1b7b9", + "effectiveGasPrice": "0x3f1f5c", + "blobGasUsed": "0x55ca", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x33c603", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x36b41220", + "l1GasPrice": "0x3a518dd", + "l1GasUsed": "0x9e2" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1771018257824, + "chain": 8453, + "commit": "feef4c5" +} \ No newline at end of file diff --git a/broadcast/AddSellableTokens.s.sol/8453/run-1771285838021.json b/broadcast/AddSellableTokens.s.sol/8453/run-1771285838021.json new file mode 100644 index 0000000..e5bcd09 --- /dev/null +++ b/broadcast/AddSellableTokens.s.sol/8453/run-1771285838021.json @@ -0,0 +1,175 @@ +{ + "transactions": [ + { + "hash": "0x3e4199b2bfb27c7986bc406a711013f6338765483a028f06095720a167049f51", + "transactionType": "CALL", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "schedule(address,uint256,bytes,bytes32,bytes32,uint256)", + "arguments": [ + "0x2c61dC81bc40389FF11CE68e78E93a3F75e41b9c", + "0", + "0x99b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf267774", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f", + "0" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x1339b", + "value": "0x0", + "input": "0x01d5062a0000000000000000000000002c61dc81bc40389ff11ce68e78e93a3f75e41b9c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000000246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006499b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf26777400000000000000000000000000000000000000000000000000000000", + "nonce": "0x3b", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x114304b380f13e14f85206189a0967769e515301a4ec425858e3d75b3e8b89fb", + "transactionType": "CALL", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "execute(address,uint256,bytes,bytes32,bytes32)", + "arguments": [ + "0x2c61dC81bc40389FF11CE68e78E93a3F75e41b9c", + "0", + "0x99b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf267774", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x282f7", + "value": "0x0", + "input": "0x134008d30000000000000000000000002c61dc81bc40389ff11ce68e78e93a3f75e41b9c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f000000000000000000000000000000000000000000000000000000000000006499b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf26777400000000000000000000000000000000000000000000000000000000", + "nonce": "0x3c", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x1ac707e", + "logs": [ + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0x61528d82e6d74a258d0c9cc5ba36eff89588abe334c2e92ba74877721ffb82a3", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000002c61dc81bc40389ff11ce68e78e93a3f75e41b9c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006499b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf26777400000000000000000000000000000000000000000000000000000000", + "blockHash": "0x215cbff0530a468ecd7fdff86373bc5ed95579ce85c7c003ba366945e0ffa81a", + "blockNumber": "0x284a834", + "blockTimestamp": "0x6993ad4b", + "transactionHash": "0x3e4199b2bfb27c7986bc406a711013f6338765483a028f06095720a167049f51", + "transactionIndex": "0x70", + "logIndex": "0x29d", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", + "0x61528d82e6d74a258d0c9cc5ba36eff89588abe334c2e92ba74877721ffb82a3" + ], + "data": "0x246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f", + "blockHash": "0x215cbff0530a468ecd7fdff86373bc5ed95579ce85c7c003ba366945e0ffa81a", + "blockNumber": "0x284a834", + "blockTimestamp": "0x6993ad4b", + "transactionHash": "0x3e4199b2bfb27c7986bc406a711013f6338765483a028f06095720a167049f51", + "transactionIndex": "0x70", + "logIndex": "0x29e", + "removed": false + } + ], + "logsBloom": "0x00000080400000000000000040000000000000000000000000000000000000000000000000000000000000100000000100000000800000000000000000000000000000000000000000800000000000000000000000000008000000000000000000000000020000000000000000000800000080000000000000000c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000020000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x3e4199b2bfb27c7986bc406a711013f6338765483a028f06095720a167049f51", + "transactionIndex": "0x70", + "blockHash": "0x215cbff0530a468ecd7fdff86373bc5ed95579ce85c7c003ba366945e0ffa81a", + "blockNumber": "0x284a834", + "gasUsed": "0xdeb4", + "effectiveGasPrice": "0x25d1cc", + "blobGasUsed": "0x56e0", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x175644", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x1c034a2b", + "l1GasPrice": "0x226ab63", + "l1GasUsed": "0xa0a" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x1d1778a", + "logs": [ + { + "address": "0x2c61dc81bc40389ff11ce68e78e93a3f75e41b9c", + "topics": [ + "0x4ac723403fd9e3f5fbe7116bb75c15981bd5cb9ca32255900e5c29d9597cbee2", + "0x000000000000000000000000590830dfdf9a3f68afcdde2694773debdf267774" + ], + "data": "0x", + "blockHash": "0x215cbff0530a468ecd7fdff86373bc5ed95579ce85c7c003ba366945e0ffa81a", + "blockNumber": "0x284a834", + "blockTimestamp": "0x6993ad4b", + "transactionHash": "0x114304b380f13e14f85206189a0967769e515301a4ec425858e3d75b3e8b89fb", + "transactionIndex": "0x87", + "logIndex": "0x2de", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0x61528d82e6d74a258d0c9cc5ba36eff89588abe334c2e92ba74877721ffb82a3", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000002c61dc81bc40389ff11ce68e78e93a3f75e41b9c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000006499b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf26777400000000000000000000000000000000000000000000000000000000", + "blockHash": "0x215cbff0530a468ecd7fdff86373bc5ed95579ce85c7c003ba366945e0ffa81a", + "blockNumber": "0x284a834", + "blockTimestamp": "0x6993ad4b", + "transactionHash": "0x114304b380f13e14f85206189a0967769e515301a4ec425858e3d75b3e8b89fb", + "transactionIndex": "0x87", + "logIndex": "0x2df", + "removed": false + } + ], + "logsBloom": "0x00000081400000000000000000000001000000000000000000000000000000000000000000000000001000100000000000000000000800000000000000000000000000000000010000800000000000000000000000000000004000000000002000000000020000000000000000000800000000000000000000000c00000000000000000000000000000000000000000000000000000000040010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000820000000", + "type": "0x2", + "transactionHash": "0x114304b380f13e14f85206189a0967769e515301a4ec425858e3d75b3e8b89fb", + "transactionIndex": "0x87", + "blockHash": "0x215cbff0530a468ecd7fdff86373bc5ed95579ce85c7c003ba366945e0ffa81a", + "blockNumber": "0x284a834", + "gasUsed": "0x1b7a3", + "effectiveGasPrice": "0x25d1cc", + "blobGasUsed": "0x55ca", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x175644", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x1b934a8f", + "l1GasPrice": "0x226ab63", + "l1GasUsed": "0x9e2" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1771285838021, + "chain": 8453, + "commit": "a21cb13" +} \ No newline at end of file diff --git a/broadcast/AddSellableTokens.s.sol/8453/run-latest.json b/broadcast/AddSellableTokens.s.sol/8453/run-latest.json new file mode 100644 index 0000000..e5bcd09 --- /dev/null +++ b/broadcast/AddSellableTokens.s.sol/8453/run-latest.json @@ -0,0 +1,175 @@ +{ + "transactions": [ + { + "hash": "0x3e4199b2bfb27c7986bc406a711013f6338765483a028f06095720a167049f51", + "transactionType": "CALL", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "schedule(address,uint256,bytes,bytes32,bytes32,uint256)", + "arguments": [ + "0x2c61dC81bc40389FF11CE68e78E93a3F75e41b9c", + "0", + "0x99b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf267774", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f", + "0" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x1339b", + "value": "0x0", + "input": "0x01d5062a0000000000000000000000002c61dc81bc40389ff11ce68e78e93a3f75e41b9c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000000246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006499b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf26777400000000000000000000000000000000000000000000000000000000", + "nonce": "0x3b", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x114304b380f13e14f85206189a0967769e515301a4ec425858e3d75b3e8b89fb", + "transactionType": "CALL", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "execute(address,uint256,bytes,bytes32,bytes32)", + "arguments": [ + "0x2c61dC81bc40389FF11CE68e78E93a3F75e41b9c", + "0", + "0x99b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf267774", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x282f7", + "value": "0x0", + "input": "0x134008d30000000000000000000000002c61dc81bc40389ff11ce68e78e93a3f75e41b9c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f000000000000000000000000000000000000000000000000000000000000006499b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf26777400000000000000000000000000000000000000000000000000000000", + "nonce": "0x3c", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x1ac707e", + "logs": [ + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0x61528d82e6d74a258d0c9cc5ba36eff89588abe334c2e92ba74877721ffb82a3", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000002c61dc81bc40389ff11ce68e78e93a3f75e41b9c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006499b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf26777400000000000000000000000000000000000000000000000000000000", + "blockHash": "0x215cbff0530a468ecd7fdff86373bc5ed95579ce85c7c003ba366945e0ffa81a", + "blockNumber": "0x284a834", + "blockTimestamp": "0x6993ad4b", + "transactionHash": "0x3e4199b2bfb27c7986bc406a711013f6338765483a028f06095720a167049f51", + "transactionIndex": "0x70", + "logIndex": "0x29d", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", + "0x61528d82e6d74a258d0c9cc5ba36eff89588abe334c2e92ba74877721ffb82a3" + ], + "data": "0x246250b5c38bf75f992da1df0c5fca203c2c386ab9f5f2876942203e40dfe40f", + "blockHash": "0x215cbff0530a468ecd7fdff86373bc5ed95579ce85c7c003ba366945e0ffa81a", + "blockNumber": "0x284a834", + "blockTimestamp": "0x6993ad4b", + "transactionHash": "0x3e4199b2bfb27c7986bc406a711013f6338765483a028f06095720a167049f51", + "transactionIndex": "0x70", + "logIndex": "0x29e", + "removed": false + } + ], + "logsBloom": "0x00000080400000000000000040000000000000000000000000000000000000000000000000000000000000100000000100000000800000000000000000000000000000000000000000800000000000000000000000000008000000000000000000000000020000000000000000000800000080000000000000000c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000020000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x3e4199b2bfb27c7986bc406a711013f6338765483a028f06095720a167049f51", + "transactionIndex": "0x70", + "blockHash": "0x215cbff0530a468ecd7fdff86373bc5ed95579ce85c7c003ba366945e0ffa81a", + "blockNumber": "0x284a834", + "gasUsed": "0xdeb4", + "effectiveGasPrice": "0x25d1cc", + "blobGasUsed": "0x56e0", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x175644", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x1c034a2b", + "l1GasPrice": "0x226ab63", + "l1GasUsed": "0xa0a" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x1d1778a", + "logs": [ + { + "address": "0x2c61dc81bc40389ff11ce68e78e93a3f75e41b9c", + "topics": [ + "0x4ac723403fd9e3f5fbe7116bb75c15981bd5cb9ca32255900e5c29d9597cbee2", + "0x000000000000000000000000590830dfdf9a3f68afcdde2694773debdf267774" + ], + "data": "0x", + "blockHash": "0x215cbff0530a468ecd7fdff86373bc5ed95579ce85c7c003ba366945e0ffa81a", + "blockNumber": "0x284a834", + "blockTimestamp": "0x6993ad4b", + "transactionHash": "0x114304b380f13e14f85206189a0967769e515301a4ec425858e3d75b3e8b89fb", + "transactionIndex": "0x87", + "logIndex": "0x2de", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0x61528d82e6d74a258d0c9cc5ba36eff89588abe334c2e92ba74877721ffb82a3", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000002c61dc81bc40389ff11ce68e78e93a3f75e41b9c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000006499b39dc100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000590830dfdf9a3f68afcdde2694773debdf26777400000000000000000000000000000000000000000000000000000000", + "blockHash": "0x215cbff0530a468ecd7fdff86373bc5ed95579ce85c7c003ba366945e0ffa81a", + "blockNumber": "0x284a834", + "blockTimestamp": "0x6993ad4b", + "transactionHash": "0x114304b380f13e14f85206189a0967769e515301a4ec425858e3d75b3e8b89fb", + "transactionIndex": "0x87", + "logIndex": "0x2df", + "removed": false + } + ], + "logsBloom": "0x00000081400000000000000000000001000000000000000000000000000000000000000000000000001000100000000000000000000800000000000000000000000000000000010000800000000000000000000000000000004000000000002000000000020000000000000000000800000000000000000000000c00000000000000000000000000000000000000000000000000000000040010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000820000000", + "type": "0x2", + "transactionHash": "0x114304b380f13e14f85206189a0967769e515301a4ec425858e3d75b3e8b89fb", + "transactionIndex": "0x87", + "blockHash": "0x215cbff0530a468ecd7fdff86373bc5ed95579ce85c7c003ba366945e0ffa81a", + "blockNumber": "0x284a834", + "gasUsed": "0x1b7a3", + "effectiveGasPrice": "0x25d1cc", + "blobGasUsed": "0x55ca", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x175644", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x1b934a8f", + "l1GasPrice": "0x226ab63", + "l1GasUsed": "0x9e2" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1771285838021, + "chain": 8453, + "commit": "a21cb13" +} \ No newline at end of file diff --git a/broadcast/Deploy.s.sol/8453/run-1771012596204.json b/broadcast/Deploy.s.sol/8453/run-1771012596204.json new file mode 100644 index 0000000..9778456 --- /dev/null +++ b/broadcast/Deploy.s.sol/8453/run-1771012596204.json @@ -0,0 +1,1267 @@ +{ + "transactions": [ + { + "hash": "0x8c27f572246018455ff55f2f0ba8db816d9c5efafc2118908c9174ed41eb378a", + "transactionType": "CREATE2", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": null, + "arguments": [ + "0", + "[0xF8CBf6437d2473eC59885299Af38D9A13cE97ecA]", + "[0xF8CBf6437d2473eC59885299Af38D9A13cE97ecA]", + "0x0000000000000000000000000000000000000000" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0x1e5693", + "value": "0x0", + "input": "0x000000000000000000000000000000000000000000000000000000000000000760806040523461016657611a61803803806100198161016a565b92833981019060808183031261016657805160208201519091906001600160401b038111610166578361004d9183016101b7565b604082015190936001600160401b0382116101665761007360609161007a9385016101b7565b92016101a3565b61008330610249565b506001600160a01b038116610156575b505f5b83518110156100e0576001906100be6001600160a01b036100b78388610221565b51166102bf565b506100d9828060a01b036100d28388610221565b5116610352565b5001610096565b50905f5b82518110156101135760019061010c6001600160a01b036101058387610221565b51166103e5565b50016100e4565b7f11c24f4ead16507c69ac467fbd5e4eed5fb5c699626d2cc6d66421df253886d5604083806002558151905f82526020820152a160405161154890816104798239f35b61015f90610249565b505f610093565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761018f57604052565b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b038216820361016657565b9080601f83011215610166578151916001600160401b03831161018f578260051b906020806101e781850161016a565b80968152019282010192831161016657602001905b8282106102095750505090565b60208091610216846101a3565b8152019101906101fc565b80518210156102355760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b6001600160a01b0381165f9081525f516020611a415f395f51905f52602052604090205460ff166102ba576001600160a01b03165f8181525f516020611a415f395f51905f5260205260408120805460ff191660011790553391905f5160206119c15f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f5160206119e15f395f51905f52602052604090205460ff166102ba576001600160a01b03165f8181525f5160206119e15f395f51905f5260205260408120805460ff191660011790553391907fb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc1905f5160206119c15f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611a215f395f51905f52602052604090205460ff166102ba576001600160a01b03165f8181525f516020611a215f395f51905f5260205260408120805460ff191660011790553391907ffd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f783905f5160206119c15f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611a015f395f51905f52602052604090205460ff166102ba576001600160a01b03165f8181525f516020611a015f395f51905f5260205260408120805460ff191660011790553391907fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e63905f5160206119c15f395f51905f529080a460019056fe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806301d5062a14610b2057806301ffc9a714610ab057806307bd026514610a76578063134008d3146109c357806313bc9f20146109a5578063150b7a0214610950578063248a9ca3146109265780632ab0f529146109085780632f2ff15d146108cb57806331d50750146108ad57806336568abe14610869578063584b153e1461084157806364d62353146107dc5780637958004c146107995780638065657f1461077a5780638f2a0bb0146105f55780638f61f4f5146105bb57806391d1485414610573578063a217fddf14610559578063b08e51c01461051f578063b1c5f427146104f5578063bc197c8114610460578063c4d252f514610382578063d45c443514610358578063d547741f14610314578063e38335e5146101c8578063f23a6e61146101735763f27a0c920361000e573461016f575f36600319011261016f576020600254604051908152f35b5f80fd5b3461016f5760a036600319011261016f5761018c610bcb565b50610195610be1565b506084356001600160401b03811161016f576101b5903690600401610cc2565b5060405163f23a6e6160e01b8152602090f35b6101d136610d38565b5f80527fdae2aa361dfd1ca020a396615627d436107c35eff9fe7738a3512819782d70696020527f5ba6852781629bcdcd4bdaa6de76d786f1c64b16acdac474e55bebc0ea1579515492979196919593949260ff1615610306575b8282148015906102fc575b6102e15761024e61025591888a888789888d611002565b968761131b565b5f5b81811061026757610018876113c6565b8080887fc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b5888886102d86102bf8f986001998f828e6102b28f836102ad916102b896610f89565b610fad565b97610f89565b3595610fc1565b906102cc82828787611373565b60405194859485610e65565b0390a301610257565b50869063ffb0321160e01b5f5260045260245260445260645ffd5b5087821415610237565b61030f3361124d565b61022c565b3461016f57604036600319011261016f57610018600435610333610be1565b9061035361034c825f525f602052600160405f20015490565b33906112d3565b61146c565b3461016f57602036600319011261016f576004355f526001602052602060405f2054604051908152f35b3461016f57602036600319011261016f57335f9081527fc3ad33e20b0c56a223ad5104fff154aa010f8715b9c981fd38fdc60a4d1a52fb60205260409020546004359060ff1615610429576103d681610ed3565b1561040f57805f5260016020525f60408120557fbaa1eb22f2a492ba1a5fea61b8df4d27c6c8b5f3971e63bb58fa14ff72eedb705f80a2005b635ead8eb560e01b5f52600452600460021760245260445ffd5b63e2517d3f60e01b5f52336004527ffd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f78360245260445ffd5b3461016f5760a036600319011261016f57610479610bcb565b50610482610be1565b506044356001600160401b03811161016f576104a2903690600401610da6565b506064356001600160401b03811161016f576104c2903690600401610da6565b506084356001600160401b03811161016f576104e2903690600401610cc2565b5060405163bc197c8160e01b8152602090f35b3461016f57602061051761050836610d38565b96959095949194939293611002565b604051908152f35b3461016f575f36600319011261016f5760206040517ffd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f7838152f35b3461016f575f36600319011261016f5760206040515f8152f35b3461016f57604036600319011261016f5761058c610be1565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461016f575f36600319011261016f5760206040517fb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc18152f35b3461016f5760c036600319011261016f576004356001600160401b03811161016f57610625903690600401610d08565b906024356001600160401b03811161016f57610645903690600401610d08565b6044929192356001600160401b03811161016f57610667903690600401610d08565b9390916064356084359560a4359261067e336111c7565b808914801590610770575b6107565761069d88848489858a8f8e611002565b986106a8858b611154565b895f5b8281106106e8575089806106bb57005b60207f20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d038791604051908152a2005b806001927f4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca8b8b61074b8f8c61073e8f928e6107378f8f906107316102ad8f8097948195610f89565b99610f89565b3597610fc1565b9060405196879687610e2d565b0390a3018a906106ab565b908863ffb0321160e01b5f5260045260245260445260645ffd5b5081891415610689565b3461016f57602061051761078d36610c24565b94939093929192610f34565b3461016f57602036600319011261016f576107b5600435610efc565b60405160048210156107c8576020918152f35b634e487b7160e01b5f52602160045260245ffd5b3461016f57602036600319011261016f5760043530330361082e577f11c24f4ead16507c69ac467fbd5e4eed5fb5c699626d2cc6d66421df253886d560406002548151908152836020820152a1600255005b63e2850c5960e01b5f523360045260245ffd5b3461016f57602036600319011261016f57602061085f600435610ed3565b6040519015158152f35b3461016f57604036600319011261016f57610882610be1565b336001600160a01b0382160361089e576100189060043561146c565b63334bd91960e11b5f5260045ffd5b3461016f57602036600319011261016f57602061085f600435610ebc565b3461016f57604036600319011261016f576100186004356108ea610be1565b9061090361034c825f525f602052600160405f20015490565b6113e4565b3461016f57602036600319011261016f57602061085f600435610ea4565b3461016f57602036600319011261016f5760206105176004355f525f602052600160405f20015490565b3461016f57608036600319011261016f57610969610bcb565b50610972610be1565b506064356001600160401b03811161016f57610992903690600401610cc2565b50604051630a85bd0160e11b8152602090f35b3461016f57602036600319011261016f57602061085f600435610e8c565b610018610a545f610a607fc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58610a4b6109fa36610c24565b7fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e638a9995979299949394528960205260408a208a805260205260ff60408b20541615610a68575b8884848989610f34565b9889978861131b565b6102cc82828787611373565b0390a36113c6565b610a713361124d565b610a41565b3461016f575f36600319011261016f5760206040517fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e638152f35b3461016f57602036600319011261016f5760043563ffffffff60e01b811680910361016f57602090630271189760e51b8114908115610af5575b506040519015158152f35b637965db0b60e01b811491508115610b0f575b5082610aea565b6301ffc9a760e01b14905082610b08565b3461016f5760c036600319011261016f57610b39610bcb565b602435906044356001600160401b03811161016f577f4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca92610b7f5f923690600401610bf7565b94909160643594610bc16084359660a43590610b9a336111c7565b610ba889828c8a8989610f34565b998a97610bb5848a611154565b60405196879687610e2d565b0390a3806106bb57005b600435906001600160a01b038216820361016f57565b602435906001600160a01b038216820361016f57565b9181601f8401121561016f578235916001600160401b03831161016f576020838186019501011161016f57565b60a060031982011261016f576004356001600160a01b038116810361016f579160243591604435906001600160401b03821161016f57610c6691600401610bf7565b90916064359060843590565b90601f801991011681019081106001600160401b03821117610c9357604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b038111610c9357601f01601f191660200190565b81601f8201121561016f57803590610cd982610ca7565b92610ce76040519485610c72565b8284526020838301011161016f57815f926020809301838601378301015290565b9181601f8401121561016f578235916001600160401b03831161016f576020808501948460051b01011161016f57565b60a060031982011261016f576004356001600160401b03811161016f5781610d6291600401610d08565b929092916024356001600160401b03811161016f5781610d8491600401610d08565b92909291604435906001600160401b03821161016f57610c6691600401610d08565b9080601f8301121561016f578135916001600160401b038311610c93578260051b9060405193610dd96020840186610c72565b845260208085019282010192831161016f57602001905b828210610dfd5750505090565b8135815260209182019101610df0565b908060209392818452848401375f828201840152601f01601f1916010190565b929093610e5b926080959897969860018060a01b03168552602085015260a0604085015260a0840191610e0d565b9460608201520152565b610e89949260609260018060a01b0316825260208201528160408201520191610e0d565b90565b610e9590610efc565b60048110156107c85760021490565b610ead90610efc565b60048110156107c85760031490565b610ec590610efc565b60048110156107c857151590565b610edc90610efc565b60048110156107c85760018114908115610ef4575090565b600291501490565b5f52600160205260405f205480155f14610f1557505f90565b60018103610f235750600390565b421015610f2f57600190565b600290565b94610f6a610f8394959293604051968795602087019960018060a01b03168a52604087015260a0606087015260c0860191610e0d565b91608084015260a083015203601f198101835282610c72565b51902090565b9190811015610f995760051b0190565b634e487b7160e01b5f52603260045260245ffd5b356001600160a01b038116810361016f5790565b9190811015610f995760051b81013590601e198136030182121561016f5701908135916001600160401b03831161016f57602001823603811361016f579190565b9693949190969592956040519660208801988060c08a0160a08c525260e0890192905f905b80821061111e57505050878203601f190160408901528082526001600160fb1b03811161016f579087959394929160051b8092602083013701848103606086015260208101849052600584901b8101604090810194908201915f90889036829003601e1901905b8484106110b857505050505050610f839450608084015260a083015203601f198101835282610c72565b91939597909294969850601f19601f198383030101875289358381121561016f57840190602082359201916001600160401b03811161016f57803603831361016f5761110a6020928392600195610e0d565b9b0197019401918a9896999795939161108e565b91939091908435906001600160a01b038216820361016f576001600160a01b039091168152602090810194019160010190611027565b9061115e82610ebc565b6111af576002548082106111995750420190814211611185575f52600160205260405f2055565b634e487b7160e01b5f52601160045260245ffd5b90635433660960e01b5f5260045260245260445ffd5b50635ead8eb560e01b5f52600452600160245260445ffd5b6001600160a01b0381165f9081527f3412d5605ac6cd444957cedb533e5dacad6378b4bc819ebe3652188a665066d5602052604090205460ff16156112095750565b63e2517d3f60e01b5f9081526001600160a01b03919091166004527fb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc1602452604490fd5b6001600160a01b0381165f9081527fdae2aa361dfd1ca020a396615627d436107c35eff9fe7738a3512819782d7069602052604090205460ff161561128f5750565b63e2517d3f60e01b5f9081526001600160a01b03919091166004527fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e63602452604490fd5b90815f525f60205260405f2060018060a01b0382165f5260205260ff60405f205416156112fe575050565b63e2517d3f60e01b5f5260018060a01b031660045260245260445ffd5b61132481610e8c565b1561135c57508015158061134c575b61133a5750565b63121534c360e31b5f5260045260245ffd5b5061135681610ea4565b15611333565b635ead8eb560e01b5f52600452600460245260445ffd5b6113bb935f93928493826040519384928337810185815203925af13d156113be573d9061139f82610ca7565b916113ad6040519384610c72565b82523d5f602084013e6114ec565b50565b6060906114ec565b6113cf81610e8c565b1561135c575f526001602052600160405f2055565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611466575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611466575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b156114f45790565b80511561150357602081519101fd5b63d6bda27560e01b5f5260045ffdfea2646970667358221220d337a7b00bb49f4e259f4673e12a4b0cca74005c34d86b712f6db699536a25d164736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3412d5605ac6cd444957cedb533e5dacad6378b4bc819ebe3652188a665066d5dae2aa361dfd1ca020a396615627d436107c35eff9fe7738a3512819782d7069c3ad33e20b0c56a223ad5104fff154aa010f8715b9c981fd38fdc60a4d1a52fbad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb50000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", + "nonce": "0x18", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x7b00c930985dc5150eb462be54706b1b8c987d2fd1ab9168406f25e3d62cedce", + "transactionType": "CREATE2", + "contractName": "YieldSeekerAgentWalletFactory", + "contractAddress": "0x9900f8019b20e822e2d5897db246a376a9514c8f", + "function": null, + "arguments": [ + "0x773541F7c38BE8106AE966CA9D6fee494a0eDD24", + "0xFBD0A3646Bac17eE60860df7751129735b3F07A8" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0x1acaa3", + "value": "0x0", + "input": "0x00000000000000000000000000000000000000000000000000000000000000076080346100a157601f61159a38819003918201601f19168301916001600160401b038311848410176100a55780849260409485528339810103126100a157610052602061004b836100b9565b92016100b9565b6001600160a01b03821615610092576001600160a01b038116156100925761007c610082926100cd565b50610120565b5060405161126990816102f18239f35b63d92e233d60e01b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036100a157565b6100d7815f6101f8565b90816100e1575090565b5f8052600160205261011c906001600160a01b03167fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49610280565b5090565b5f51602061155a5f395f51905f525f5260016020525f51602061157a5f395f51905f5254600a1115806101b7575b6101a857610169815f51602061155a5f395f51905f526101f8565b9081610173575090565b5f51602061155a5f395f51905f525f52600160205261011c906001600160a01b03165f51602061157a5f395f51905f52610280565b636055dca160e01b5f5260045ffd5b506001600160a01b0381165f9081527fe8424ec1ecf42e9e88998e7da204f6091f75a50979eee18faf18b49b474940b0602052604090205460ff161561014e565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1661027a575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b6001810190825f528160205260405f2054155f146102e9578054680100000000000000008110156100a557600181018083558110156102d5578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe6080806040526004361015610012575f80fd5b5f905f3560e01c9081630155e09814610b845750806301ffc9a714610b14578063244c9c29146109fb578063248a9ca3146109c95780632b78c9f7146109ae5780632f2ff15d146108d95780633325e1df146108b157806336568abe1461086b57806350b5c16a14610843578063583f2f09146105c65780635b34b8231461054657806368fe596f1461051d5780638cb84e18146104795780639010d07c1461043357806391d14854146103ea5780639277a1851461036a578063a1dcf28214610342578063a217fddf14610326578063a3246ad3146102b2578063c68e00fb14610183578063ca15c873146101595763d547741f14610110575f80fd5b346101565760403660031901126101565761015260043561012f610be3565b9061014d610148825f525f602052600160405f20015490565b610cc4565b610cfc565b5080f35b80fd5b50346101565760203660031901126101565760406020916004358152600183522054604051908152f35b5034610156576020366003190112610156576004356001600160a01b038116908190036102ae576101b2610c75565b801561029f57803b1561028d576040516202dd3160ec1b8152602081600481855afa90811561028257839161023c575b50306001600160a01b039091160361022d57600280546001600160a01b031916821790557fab64f92ab780ecbf4f3866f57cee465ff36c89450dcce20237ca7a8d81fb7d138280a280f35b63502eeedf60e01b8252600482fd5b90506020813d60201161027a575b8161025760209383610c3b565b8101031261027657516001600160a01b0381168103610276575f6101e2565b8280fd5b3d915061024a565b6040513d85823e3d90fd5b6322a2d07b60e21b8252600452602490fd5b63d92e233d60e01b8252600482fd5b5080fd5b5034610156576020366003190112610156576004358152600160205260408120604051918260208354918281520192825260208220915b8181106103105761030c8561030081870382610c3b565b60405191829182610bf9565b0390f35b82548452602090930192600192830192016102e9565b5034610156578060031936011261015657602090604051908152f35b503461015657806003193601126101565760206040515f5160206112145f395f51905f528152f35b5034610156576020366003190112610156576004356001600160a01b038116908190036102ae57610399610c75565b801561029f57803b1561028d57600580546001600160a01b0319811683179091556001600160a01b03167f5a69769904291a5b71c7f53981055587f0f849edb458cc47e64510be36d164d38380a380f35b5034610156576040366003190112610156576040610406610be3565b91600435815280602052209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b50346101565760403660031901126101565761046060406020926004358152600184522060243590610dbc565b905460405160039290921b1c6001600160a01b03168152f35b5034610156576040366003190112610156576020600b610497610bcd565b604080516001600160a01b03909216848301908152602435602082015291906104cd90829084015b03601f198101835282610c3b565b5190206102786040516104e285830182610c3b565b81815284810191610f9c833951902090604051916040830152838201523081520160ff8153605590206040516001600160a01b039091168152f35b50346101565780600319360112610156576002546040516001600160a01b039091168152602090f35b5034610156576020366003190112610156576004356001600160a01b038116908190036102ae57610575610c75565b801561029f57803b1561028d57600380546001600160a01b0319811683179091556001600160a01b03167f482b97c53e48ffa324a976e2738053e9aff6eee04d8aac63b10e19411d869b828380a380f35b346107b05760603660031901126107b0576105df610bcd565b6044356001600160a01b0381169190602435908381036107b057335f9081527fe8424ec1ecf42e9e88998e7da204f6091f75a50979eee18faf18b49b474940b0602052604090205460ff161561081f5783156107fd573b1561080c576001600160a01b0382169182156107fd576002546001600160a01b0316156107ee576003546001600160a01b0316156107df57825f52600460205260405f20825f5260205260018060a01b0360405f2054166107c857604080516001600160a01b0390921660208301908152908201839052906106bb81606081016104bf565b51902060405161027880820182811067ffffffffffffffff8211176107b4578291610f9c833903905ff580156107a55760018060a01b031691805f52600460205260405f20825f5260205260405f20836bffffffffffffffffffffffff60a01b825416179055823b156107b0576040519363c350a1b560e01b85528160048601528260248601528060448601525f8560648183885af19485156107a557602085927f24924211b2afa1a1fa2d9d9361ccc452c0df4f982d439cdcc311140e55b3f56d928298610795575b50604051908152a4604051908152f35b5f61079f91610c3b565b5f610785565b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b5090633de717e160e21b5f5260045260245260445ffd5b6303b099cf60e61b5f5260045ffd5b638f51a26d60e01b5f5260045ffd5b63d92e233d60e01b5f5260045ffd5b826322a2d07b60e21b5f5260045260245ffd5b63e2517d3f60e01b5f52336004525f5160206112145f395f51905f5260245260445ffd5b346107b0575f3660031901126107b0576003546040516001600160a01b039091168152602090f35b346107b05760403660031901126107b057610884610be3565b336001600160a01b038216036108a2576108a090600435610cfc565b005b63334bd91960e11b5f5260045ffd5b346107b0575f3660031901126107b0576005546040516001600160a01b039091168152602090f35b346107b05760403660031901126107b0576004356108f5610be3565b61090d610148835f525f602052600160405f20015490565b5f5160206112145f395f51905f52821480610997575b8061096d575b61095e576109378183610dd1565b61093d57005b5f918252600160205260409091206108a0916001600160a01b031690610f42565b636055dca160e01b5f5260045ffd5b505f828152602081815260408083206001600160a01b038516845290915290205460ff1615610929565b50815f526001602052600a60405f20541015610923565b346107b0575f3660031901126107b0576020604051600a8152f35b346107b05760203660031901126107b05760206109f36004355f525f602052600160405f20015490565b604051908152f35b346107b0575f3660031901126107b0575f5160206112145f395f51905f525f5260016020527f2737f4fbde60fa8ca451e7409d70a576ffb90aaa6a453ecd5bd224428e00910354610a4b81610c5d565b90610a596040519283610c3b565b808252601f19610a6882610c5d565b013660208401375f5b818110610a86576040518061030c8582610bf9565b5f5160206112145f395f51905f525f526001602052610ac5817f2737f4fbde60fa8ca451e7409d70a576ffb90aaa6a453ecd5bd224428e009103610dbc565b9054845160039290921b1c6001600160a01b03169190811015610b00576001600160a01b03909116600582901b840160200152600101610a71565b634e487b7160e01b5f52603260045260245ffd5b346107b05760203660031901126107b05760043563ffffffff60e01b81168091036107b057602090635a05180f60e01b8114908115610b59575b506040519015158152f35b637965db0b60e01b811491508115610b73575b5082610b4e565b6301ffc9a760e01b14905082610b6c565b346107b05760403660031901126107b0576020906001600160a01b03610ba8610bcd565b165f908152600483526040808220602435835284529020546001600160a01b03168152f35b600435906001600160a01b03821682036107b057565b602435906001600160a01b03821682036107b057565b60206040818301928281528451809452019201905f5b818110610c1c5750505090565b82516001600160a01b0316845260209384019390920191600101610c0f565b90601f8019910116810190811067ffffffffffffffff8211176107b457604052565b67ffffffffffffffff81116107b45760051b60200190565b335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff1615610cad57565b63e2517d3f60e01b5f52336004525f60245260445ffd5b5f8181526020818152604080832033845290915290205460ff1615610ce65750565b63e2517d3f60e01b5f523360045260245260445ffd5b610d068282610d36565b9182610d1157505090565b5f91825260016020526040909120610d32916001600160a01b031690610e53565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615610db6575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b50505f90565b8054821015610b00575f5260205f2001905f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16610db6575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b906001820191815f528260205260405f20548015155f14610f3a575f198101818111610f265782545f19810191908211610f2657818103610edb575b50505080548015610ec7575f190190610ea88282610dbc565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b610f11610eeb610efb9386610dbc565b90549060031b1c92839286610dbc565b819391549060031b91821b915f19901b19161790565b90555f528360205260405f20555f8080610e8f565b634e487b7160e01b5f52601160045260245ffd5b505050505f90565b6001810190825f528160205260405f2054155f14610f94578054680100000000000000008110156107b457610f81610efb826001879401855584610dbc565b905554915f5260205260405f2055600190565b5050505f9056fe60808060405234610153576368fe596f60e01b8152602081600481335afa90811561015e575f91610103575b506040516001600160a01b039190911690602081016001600160401b038111828210176100ef576040525f8152813b156100dc577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b03191683179055817fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a28051156100d5576100c591610169565b505b604051608290816101f68239f35b50506100c7565b50634c9c8ce360e01b5f5260045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b905060203d602011610157575b601f8101601f191682016001600160401b038111838210176100ef5760209183916040528101031261015357516001600160a01b0381168103610153575f61002b565b5f80fd5b503d610110565b6040513d5f823e3d90fd5b905f8091602081519101845af480806101e2575b1561019d5750506040513d81523d5f602083013e60203d82010160405290565b156101c257639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b3d156101d3576040513d5f823e3d90fd5b63d6bda27560e01b5f5260045ffd5b503d15158061017d5750813b151561017d56fe60806040527f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc545f9081906001600160a01b0316368280378136915af43d5f803e156048573d5ff35b3d5ffdfea264697066735822122026ee7f8fad82dfc43c6e07f9512d161616037da340f2d2657ec98d6976df3e1e64736f6c634300081c00332fbb137a62ebd69bc6a41f4b4e96301da2105eef211fb1a3c75e8cfb9bfe7879a2646970667358221220d92ad40c30630b561bd2d1343834e67c207ca1c6ce5447c792d42f498a93df1c64736f6c634300081c00332fbb137a62ebd69bc6a41f4b4e96301da2105eef211fb1a3c75e8cfb9bfe78792737f4fbde60fa8ca451e7409d70a576ffb90aaa6a453ecd5bd224428e009103000000000000000000000000773541f7c38be8106ae966ca9d6fee494a0edd24000000000000000000000000fbd0a3646bac17ee60860df7751129735b3f07a8", + "nonce": "0x19", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x30dbae9ea9e5131f93cbe3a867fc9bb6cf2a4235b48d4ea6e8de53e5303761c8", + "transactionType": "CREATE2", + "contractName": "YieldSeekerAgentWalletV1", + "contractAddress": "0x14283f733d6f73ca116eaa07af7c8c16b1cef7e3", + "function": null, + "arguments": [ + "0x9900f8019b20e822E2D5897db246a376A9514C8F" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0x3040fc", + "value": "0x0", + "input": "0x000000000000000000000000000000000000000000000000000000000000000760c03461013457601f61294138819003918201601f19168301916001600160401b038311848410176101385780849260209460405283398101031261013457516001600160a01b03811690819003610134573060805260a0525f5160206129215f395f51905f525460ff8160401c16610125576002600160401b03196001600160401b038216016100cf575b6040516127d4908161014d8239608051818181610bdb01528181610cb501526110e8015260a051818181610d190152818161108b0152818161137d0152611d430152f35b6001600160401b0319166001600160401b039081175f5160206129215f395f51905f52556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a15f61008b565b63f92ee8a960e01b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f5f3560e01c80630a3b7ad7146115bf57806318dfb3c71461155d5780631dec8ea5146114e6578063244c9c291461142357806329db6ee6146113ac5780632dd31000146113685780633325e1df14611334578063367ad9e21461104c5780633a871cdd14610f795780634798faf514610f0b5780634f1ef28614610c6457806350b5c16a14610c2f57806352d1902d14610bc85780635c0df1a414610b615780638da5cb5b14610b2c57806395243dd114610b0657806397d0763c146108c757806397ef9655146108a1578063ad3cb1cc14610854578063b0246dc11461080f578063b0d691fe146107e0578063b1588fb61461079d578063b61d27f61461074f578063c350a1b5146105ee578063c51f172d14610572578063c8796572146104fc578063cd6dc687146103d1578063cdf456e11461039c578063d087d288146102f8578063d589621f146102c6578063d8adf1391461025e578063e9490cac146102215763fe71733514610190575061000e565b3461021e57602036600319011261021e576101a961167f565b5f5160206126df5f395f51905f52546001600160a01b0316330361020b576101d0816117ea565b805460ff191660011790556001600160a01b03167f02cabee40f87619dfcb340449404a4513e5c455e77013d441169b12a26e70a218280a280f35b63472511eb60e11b825233600452602482fd5b80fd5b503461021e578060031936011261021e5760207f901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9cd54604051908152f35b503461021e578060031936011261021e575f5160206126df5f395f51905f52546001600160a01b0316331415806102b2575b61029f5761029c611ceb565b80f35b63472511eb60e11b815233600452602490fd5b5060ff6102be336117b2565b541615610290565b503461021e57602036600319011261021e57602060ff6102ec6102e761167f565b611822565b54166040519015158152f35b503461021e578060031936011261021e57604051631aab3f0d60e11b81523060048201526024810182905290602082604481735ff137d4b0fdcd49dca30c7cf57e578a026d27895afa9081156103905790610359575b602090604051908152f35b506020813d602011610388575b816103736020938361172c565b81010312610384576020905161034e565b5f80fd5b3d9150610366565b604051903d90823e3d90fd5b503461021e578060031936011261021e575f51602061277f5f395f51905f52546040516001600160a01b039091168152602090f35b503461021e57604036600319011261021e576103eb61167f565b5f51602061275f5f395f51905f5254906001600160401b0360ff8360401c16159216801590816104f4575b60011490816104ea575b1590816104e1575b506104d257610448908261043a611903565b6104a2575b60243590612440565b61044f5780f35b60ff60401b195f51602061275f5f395f51905f5254165f51602061275f5f395f51905f52557fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602060405160018152a180f35b600160401b60ff60401b195f51602061275f5f395f51905f525416175f51602061275f5f395f51905f525561043f565b63f92ee8a960e01b8352600483fd5b9050155f610428565b303b159150610420565b839150610416565b503461021e578060031936011261021e57735ff137d4b0fdcd49dca30c7cf57e578a026d278933141580610551575b8061053d575b61029f5761029c611930565b5060ff610549336117b2565b541615610531565b505f5160206126df5f395f51905f52546001600160a01b031633141561052b565b503461021e57602036600319011261021e5761058c61167f565b5f5160206126df5f395f51905f52546001600160a01b0316330361020b576105b381611822565b805460ff191660011790556001600160a01b03167ff1b199bc156d70448988140152c13e4e7cef2ce43f60e7e96802e64181acba958280a280f35b503461021e57606036600319011261021e5761060861167f565b6044356001600160a01b038116929183820361074b575f51602061275f5f395f51905f5254916001600160401b0360ff8460401c1615931680159081610743575b6001149081610739575b159081610730575b506107215782610669611903565b6106f1575b60ff5f51602061275f5f395f51905f525460401c16156106e25784156106d3573b156106bf575f51602061277f5f395f51905f5280546001600160a01b031916851790556104489060243590612440565b6322a2d07b60e21b83526004849052602483fd5b63d92e233d60e01b8452600484fd5b631afcd79f60e31b8452600484fd5b600160401b60ff60401b195f51602061275f5f395f51905f525416175f51602061275f5f395f51905f525561066e565b63f92ee8a960e01b8452600484fd5b9050155f61065b565b303b159150610653565b849150610649565b8280fd5b503461021e57606036600319011261021e5761076961167f565b506044356001600160401b038111610799579061078b600492369084016116ab565b5050631eb49d6d60e11b8152fd5b5080fd5b503461021e57602036600319011261021e576107b761167f565b5f5160206126df5f395f51905f52546001600160a01b0316330361020b5761029c904790612341565b503461021e578060031936011261021e576020604051735ff137d4b0fdcd49dca30c7cf57e578a026d27898152f35b503461021e57604036600319011261021e5761082961167f565b5f5160206126df5f395f51905f52546001600160a01b0316330361020b5761029c9060243590612341565b503461021e578060031936011261021e575061089d60405161087760408261172c565b60058152640352e302e360dc1b60208201526040519182916020835260208301906116d8565b0390f35b503461021e57602036600319011261021e57602060ff6102ec6108c261167f565b6117b2565b503461021e57606036600319011261021e576004356001600160401b038111610799576108f89036906004016116fc565b91906024356001600160401b03811161074b576109199036906004016116fc565b906044356001600160401b038111610b02576109399036906004016116fc565b92735ff137d4b0fdcd49dca30c7cf57e578a026d278933141580610ae1575b80610acd575b610aba57808714801590610ab0575b610aa15761097c87969761186e565b9561098a604051978861172c565b808752601f196109998261186e565b01885b818110610a8e575050875b818110610a155787896040519182916020830160208452825180915260408401602060408360051b870101940192905b8282106109e657505050500390f35b91936001919395506020610a058192603f198a820301865288516116d8565b96019201920185949391926109d7565b610a28610a2382848a611885565b6118a9565b610a36610a23838689611885565b9087831015610a7a578291610a5e91610a5660019560051b8901896118bd565b929091611b27565b610a68828b6118ef565b52610a73818a6118ef565b50016109a7565b634e487b7160e01b8b52603260045260248bfd5b60606020828b018101919091520161099c565b63baf3f0f760e01b8652600486fd5b508387141561096d565b63472511eb60e11b865233600452602486fd5b5060ff610ad9336117b2565b54161561095e565b505f5160206126df5f395f51905f52546001600160a01b0316331415610958565b8480fd5b503461021e57602036600319011261021e57602060ff6102ec610b2761167f565b6117ea565b503461021e578060031936011261021e575f5160206126df5f395f51905f52546040516001600160a01b039091168152602090f35b503461021e57604036600319011261021e57610b7b61167f565b610b83611695565b5f5160206126df5f395f51905f52546001600160a01b03163303610bb5579081610baf61029c93612186565b916122be565b63472511eb60e11b835233600452602483fd5b503461021e578060031936011261021e577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610c205760206040515f5160206126ff5f395f51905f528152f35b63703e46dd60e11b8152600490fd5b503461021e578060031936011261021e575f51602061271f5f395f51905f52546040516001600160a01b039091168152602090f35b50604036600319011261021e57610c7961167f565b906024356001600160401b038111610799573660238201121561079957610caa90369060248160040135910161177c565b916001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016308114908115610ee9575b50610eda575f5160206126df5f395f51905f52546001600160a01b0316330361020b576040516368fe596f60e01b8152906020826004817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa918215610ecf578392610e93575b506001600160a01b0381811692168203610e84576040516352d1902d60e01b815293602085600481865afa80958596610e50575b50610d9e57634c9c8ce360e01b84526004839052602484fd5b9091845f5160206126ff5f395f51905f528103610e3e5750823b15610e2c575f5160206126ff5f395f51905f5280546001600160a01b031916821790557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a2805115610e1357610e0f916125b0565b5080f35b505034610e1d5780f35b63b398979f60e01b8152600490fd5b634c9c8ce360e01b8452600452602483fd5b632a87526960e21b8552600452602484fd5b9095506020813d602011610e7c575b81610e6c6020938361172c565b81010312610b025751945f610d85565b3d9150610e5f565b632c8cb44760e21b8352600483fd5b9091506020813d602011610ec7575b81610eaf6020938361172c565b8101031261074b57610ec09061185a565b905f610d51565b3d9150610ea2565b6040513d85823e3d90fd5b63703e46dd60e11b8252600482fd5b5f5160206126ff5f395f51905f52546001600160a01b0316141590505f610ce0565b503461021e57606036600319011261021e57610f2561167f565b90610f2e611695565b5f5160206126df5f395f51905f525460443591906001600160a01b03163303610bb55781610f5b82612186565b10610f6a5761029c92936122be565b631e9acf1760e31b8352600483fd5b503461021e57606036600319011261021e57600435906001600160401b03821161021e57610160600319833603011261021e5760443590735ff137d4b0fdcd49dca30c7cf57e578a026d2789330361100757610fdd602093602435906004016120ec565b9180610fee575b5050604051908152f35b81808092335f19f150610fff611af8565b505f80610fe4565b60405162461bcd60e51b815260206004820152601c60248201527f6163636f756e743a206e6f742066726f6d20456e747279506f696e74000000006044820152606490fd5b5034610384575f366003190112610384575f5160206126df5f395f51905f52546001600160a01b03163303611321576040516368fe596f60e01b8152907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316602083600481845afa9283156112a9575f936112e5575b506020926040516110db858261172c565b5f81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163081149081156112c3575b506112b45784600493604051948580926368fe596f60e01b82525afa9283156112a9575f93611272575b506001600160a01b0382811693168303611263576040516352d1902d60e01b8152948086600481875afa9586915f97611233575b505061118b57634c9c8ce360e01b84526004839052602484fd5b9091845f5160206126ff5f395f51905f5281036112215750823b1561120f575f5160206126ff5f395f51905f5280546001600160a01b031916821790557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a2805115611206576111fc916125b0565b505b61029c611ceb565b5050505f6111fe565b634c9c8ce360e01b5f5260045260245ffd5b632a87526960e21b5f5260045260245ffd5b9080929750813d831161125c575b61124b818361172c565b810103126103845751945f80611171565b503d611241565b632c8cb44760e21b5f5260045ffd5b9092508481813d83116112a2575b61128a818361172c565b810103126103845761129b9061185a565b915f61113d565b503d611280565b6040513d5f823e3d90fd5b63703e46dd60e11b5f5260045ffd5b5f5160206126ff5f395f51905f52546001600160a01b0316141590505f611113565b9092506020813d602011611319575b816113016020938361172c565b81010312610384576113129061185a565b915f6110ca565b3d91506112f4565b63472511eb60e11b5f523360045260245ffd5b34610384575f366003190112610384575f5160206126bf5f395f51905f52546040516001600160a01b039091168152602090f35b34610384575f366003190112610384576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b34610384576020366003190112610384576113c561167f565b5f5160206126df5f395f51905f52546001600160a01b03163303611321576113ec81611822565b805460ff191690556001600160a01b03167f198fca18affd5cdc64b42124fdf8d289753f0d02f2a15c366b5518a818ee36385f80a2005b34610384575f366003190112610384576040518060205f51602061273f5f395f51905f5254928381520180925f51602061273f5f395f51905f525f5260205f20905f5b8181106114c7575050508161147c91038261172c565b604051918291602083019060208452518091526040830191905f5b8181106114a5575050500390f35b82516001600160a01b0316845285945060209384019390920191600101611497565b82546001600160a01b0316845260209093019260019283019201611466565b34610384576020366003190112610384576114ff61167f565b5f5160206126df5f395f51905f52546001600160a01b0316330361132157611526816117ea565b805460ff191690556001600160a01b03167f7782eb55436ef47a10922ca1f2f49b9800a23991e6b6419ad7251dcff91ea07b5f80a2005b34610384576040366003190112610384576004356001600160401b0381116103845761158d9036906004016116fc565b50506024356001600160401b038111610384576115ae9036906004016116fc565b5050631eb49d6d60e11b5f5260045ffd5b34610384576060366003190112610384576115d861167f565b6115e0611695565b906044356001600160401b038111610384576116009036906004016116ab565b90735ff137d4b0fdcd49dca30c7cf57e578a026d27893314158061165e575b8061164a575b6113215761089d9361163693611b27565b6040519182916020835260208301906116d8565b5060ff611656336117b2565b541615611625565b505f5160206126df5f395f51905f52546001600160a01b031633141561161f565b600435906001600160a01b038216820361038457565b602435906001600160a01b038216820361038457565b9181601f84011215610384578235916001600160401b038311610384576020838186019501011161038457565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9181601f84011215610384578235916001600160401b038311610384576020808501948460051b01011161038457565b90601f801991011681019081106001600160401b0382111761174d57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b03811161174d57601f01601f191660200190565b92919261178882611761565b91611796604051938461172c565b829481845281830111610384578281602093845f960137010152565b6001600160a01b03165f9081527f901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9d06020526040902090565b6001600160a01b03165f9081527f901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9d16020526040902090565b6001600160a01b03165f9081527f901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9d26020526040902090565b51906001600160a01b038216820361038457565b6001600160401b03811161174d5760051b60200190565b91908110156118955760051b0190565b634e487b7160e01b5f52603260045260245ffd5b356001600160a01b03811681036103845790565b903590601e198136030182121561038457018035906001600160401b0382116103845760200191813603831361038457565b80518210156118955760209160051b010190565b60016001600160401b03195f51602061275f5f395f51905f525416175f51602061275f5f395f51905f5255565b5f5160206126bf5f395f51905f52546040516378e6802560e01b81523060048201526001600160a01b0390911690602081602481855afa9081156112a9575f91611ac6575b508015611ac2575f51602061277f5f395f51905f52546040516370a0823160e01b81523060048201526001600160a01b0390911691602082602481865afa9182156112a9575f92611a8e575b5081811115611a865750905b816119d757505050565b6040516331056e5760e21b8152602081600481875afa80156112a95783915f91611a45575b50611a06926123bf565b813b15610384575f916024839260405194859384926322bf55ef60e01b845260048401525af180156112a957611a395750565b5f611a439161172c565b565b9150506020813d602011611a7e575b81611a616020938361172c565b8101031261038457611a0691611a77849261185a565b90926119fc565b3d9150611a54565b9050906119cd565b9091506020813d602011611aba575b81611aaa6020938361172c565b810103126103845751905f6119c1565b3d9150611a9d565b5050565b90506020813d602011611af0575b81611ae16020938361172c565b8101031261038457515f611975565b3d9150611ad4565b3d15611b22573d90611b0982611761565b91611b17604051938461172c565b82523d5f602084013e565b606090565b92909160ff611b35856117ea565b5416611ccd5760ff611b4684611822565b5416611caf575f51602061271f5f395f51905f5254604051631293382360e21b81526001600160a01b039485166004820181905294909160209183916024918391165afa9081156112a9575f91611c75575b506001600160a01b03168015908115611c61575b50611c43579181611c0860845f96949587966040519485926020840197631cff79cd60e01b89526024850152604060448501528160648501528484013787838284010152601f801991011681010301601f19810183528261172c565b51915af490611c15611af8565b9115611c1d57565b60405163c2ac6b1560e01b81526020600482015280611c3f60248201856116d8565b0390fd5b63fc6da03f60e01b5f9081526001600160a01b038516600452602490fd5b6001600160a01b038616141590505f611bac565b90506020813d602011611ca7575b81611c906020938361172c565b8101031261038457611ca19061185a565b5f611b98565b3d9150611c83565b632b22728160e01b5f9081526001600160a01b038416600452602490fd5b632d9fc4df60e01b5f9081526001600160a01b038516600452602490fd5b5f5b5f51602061273f5f395f51905f5254811015611d335780611d25611d126001936124d2565b848060a01b0391549060031b1c166117b2565b805460ff1916905501611ced565b5060405163244c9c2960e01b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316905f81600481855afa9081156112a9575f91612054575b508051906001600160401b03821161174d57600160401b821161174d575f51602061273f5f395f51905f5254825f51602061273f5f395f51905f5255808310612004575b506020015f51602061273f5f395f51905f525f5260205f205f5b838110611fe757505050505f5b5f51602061273f5f395f51905f5254811015611e225780611e12611d126001936124d2565b805460ff19168317905501611ded565b5060405163285ae0b560e11b8152602081600481855afa9081156112a9575f91611fad575b506001600160a01b038116908115611f9e573b15611f9e57806020916bffffffffffffffffffffffff60a01b5f51602061271f5f395f51905f525416175f51602061271f5f395f51905f52556004604051809481937fbf763557c505c1b722bd3c3ed64e9285f16c762c09089af49b698a584d6642115f80a2633325e1df60e01b82525afa9081156112a9575f91611f5c575b506001600160a01b03168015611f4d57803b15611f4d575f5160206126bf5f395f51905f5280546001600160a01b031916821790555f51602061271f5f395f51905f52546001600160a01b03167fcb42010e342ceb4c4105e1c628b15b7192d9ed5fc3d3dd7f3b45d5f3f6850fec5f80a3565b636c01d5a960e11b5f5260045ffd5b90506020813d602011611f96575b81611f776020938361172c565b8101031261038457516001600160a01b0381168103610384575f611eda565b3d9150611f6a565b6311a1e69760e01b5f5260045ffd5b90506020813d602011611fdf575b81611fc86020938361172c565b8101031261038457611fd99061185a565b5f611e47565b3d9150611fbb565b82516001600160a01b031681830155602090920191600101611de0565b5f51602061273f5f395f51905f525f527fa4d961140a2e255508446e5505d53a08f1773a113864933ae8ed69319e4ac2219081019083015b8181106120495750611dc6565b5f815560010161203c565b90503d805f833e612065818361172c565b810190602081830312610384578051906001600160401b03821161038457019080601f8301121561038457815161209b8161186e565b926120a9604051948561172c565b81845260208085019260051b82010192831161038457602001905b8282106120d4575050505f611d82565b602080916120e18461185a565b8152019101906120c4565b61213d90612146927f19457468657265756d205369676e6564204d6573736167653a0a3332000000005f52601c52612137612130603c5f20926101408101906118bd565b369161177c565b90612502565b9092919261253c565b5f5160206126df5f395f51905f52546001600160a01b038281169116146121815761217260ff916117b2565b541661217d57600190565b5f90565b505f90565b5f51602061277f5f395f51905f52546001600160a01b0390811691168190036122af576020602491604051928380926370a0823160e01b82523060048301525afa9081156112a9575f9161227d575b505f5160206126bf5f395f51905f52546040516378e6802560e01b815230600482015290602090829060249082906001600160a01b03165afa9081156112a9575f9161224b575b50808211156122455781039081116122315790565b634e487b7160e01b5f52601160045260245ffd5b50505f90565b90506020813d602011612275575b816122666020938361172c565b8101031261038457515f61221c565b3d9150612259565b90506020813d6020116122a7575b816122986020938361172c565b8101031261038457515f6121d5565b3d915061228b565b636448d6e960e11b5f5260045ffd5b916001600160a01b038316918215612332576001600160a01b031692831561233257816122eb91856123bf565b5f5160206126df5f395f51905f52546040519182526001600160a01b0316907f8c0281578dec46ac28aa238d1ddc3bce894975318c50432a4b4c82e58777621690602090a4565b63d92e233d60e01b5f5260045ffd5b6001600160a01b03811691908215612332575f80808481945af1612363611af8565b50156123b0575f5160206126df5f395f51905f52546040519182526001600160a01b0316907f5c3457fa8f0624848f7477f9bc10f88c2c14a6f88ff9dfdfb6f6978a9dea47a890602090a3565b6312171d8360e31b5f5260045ffd5b916040519163a9059cbb60e01b5f5260018060a01b031660045260245260205f60448180865af19060015f511482161561241f575b604052156123ff5750565b635274afe760e01b5f9081526001600160a01b0391909116600452602490fd5b90600181151661243757823b15153d151616906123f4565b503d5f823e3d90fd5b6001600160a01b0316908115612332575f5160206126df5f395f51905f5280546001600160a01b031916831790557f901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9cd55612498611ceb565b735ff137d4b0fdcd49dca30c7cf57e578a026d27897ed85ca086af8cd244972a2f5c120c23ed58e508f2922c683db6a936a3838f1b5f80a3565b5f51602061273f5f395f51905f5254811015611895575f51602061273f5f395f51905f525f5260205f2001905f90565b81519190604183036125325761252b9250602082015190606060408401519301515f1a9061263c565b9192909190565b50505f9160029190565b600481101561259c578061254e575050565b600181036125655763f645eedf60e01b5f5260045ffd5b60028103612580575063fce698f760e01b5f5260045260245ffd5b60031461258a5750565b6335e2f38360e21b5f5260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b905f8091602081519101845af48080612629575b156125e45750506040513d81523d5f602083013e60203d82010160405290565b1561260957639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b3d1561261a576040513d5f823e3d90fd5b63d6bda27560e01b5f5260045ffd5b503d1515806125c45750813b15156125c4565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084116126b3579160209360809260ff5f9560405194855216868401526040830152606082015282805260015afa156112a9575f516001600160a01b038116156126a957905f905f90565b505f906001905f90565b5050505f916003919056fee1188561a552547db41879b73f85c993e73258928fd045015f7eda908faeb609901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9cc360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9ce901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9cff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00e1188561a552547db41879b73f85c993e73258928fd045015f7eda908faeb608a264697066735822122034bacf73fa4a6c826816be029fb69dc9461e7b71fdab042793d6f620e2a14c0f64736f6c634300081c0033f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a000000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f", + "nonce": "0x1a", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xce6126bfe544a722a46d69af2967864bb13ed35f7210f44c8541f1a0265dcb5e", + "transactionType": "CREATE2", + "contractName": "YieldSeekerAdapterRegistry", + "contractAddress": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "function": null, + "arguments": [ + "0x773541F7c38BE8106AE966CA9D6fee494a0eDD24", + "0xF8CBf6437d2473eC59885299Af38D9A13cE97ecA" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0x11ddb0", + "value": "0x0", + "input": "0x00000000000000000000000000000000000000000000000000000000000000076080346100a157601f610f7a38819003918201601f19168301916001600160401b038311848410176100a55780849260409485528339810103126100a157610052602061004b836100b9565b92016100b9565b6001600160a01b03821615610092576001600160a01b038116156100925761007c610082926100cd565b50610143565b50604051610d4390816101d78239f35b63d92e233d60e01b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036100a157565b6001600160a01b0381165f9081525f516020610f5a5f395f51905f52602052604090205460ff1661013e576001600160a01b03165f8181525f516020610f5a5f395f51905f5260205260408120805460ff191660011790553391905f516020610f1a5f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f516020610f3a5f395f51905f52602052604090205460ff1661013e576001600160a01b03165f8181525f516020610f3a5f395f51905f5260205260408120805460ff191660011790553391907fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b26905f516020610f1a5f395f51905f529080a460019056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a71461086f575080631d46021f146106e157806320df4359146106a757806322f2caf114610620578063248a9ca3146105ee5780632f2ff15d146105b157806336568abe1461056d5780633f4ba83a146105075780634a4ce08c1461048b5780635c975abb14610469578063618295df146103dd5780638456cb591461038557806391d148541461033d5780639362149e14610215578063a217fddf146101fb578063d547741f146101b7578063d5d7ff3c146101235763fa351f79146100e2575f80fd5b3461011f57602036600319011261011f576001600160a01b036101036108c2565b165f526005602052602060ff60405f2054166040519015158152f35b5f80fd5b3461011f57602036600319011261011f5761013c6108c2565b6101446109aa565b6001600160a01b031661015681610ba0565b90156101a457815f5260046020525f604081205561017382610c4e565b506001600160a01b0316907f95acdd767bfb2c6578833b7678c4dcc015f00b35820877f64a390809892628015f80a3005b50633b3f036f60e01b5f5260045260245ffd5b3461011f57604036600319011261011f576101f96004356101d66108d8565b906101f46101ef825f525f602052600160405f20015490565b610a19565b610ad9565b005b3461011f575f36600319011261011f5760206040515f8152f35b3461011f57604036600319011261011f5761022e6108c2565b6102366108d8565b61023e61095b565b6001600160a01b03821690811561032e576001600160a01b0381165f8181526005602052604090205490939060ff161561031b5761027b83610ba0565b6001600160a01b03169290156102e95784830361029457005b61029d91610b74565b50817f95acdd767bfb2c6578833b7678c4dcc015f00b35820877f64a390809892628015f80a37f1cf35c87329e14a81fdc68af8a463c1db203ccfc925ff5150f5dbc71bc4c23725f80a3005b906102f49250610b74565b507f1cf35c87329e14a81fdc68af8a463c1db203ccfc925ff5150f5dbc71bc4c23725f80a3005b8363fc6da03f60e01b5f5260045260245ffd5b63d92e233d60e01b5f5260045ffd5b3461011f57604036600319011261011f576103566108d8565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011f575f36600319011261011f5761039d6109aa565b6103a5610b59565b600160ff19815416176001557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b3461011f57602036600319011261011f576103f66108c2565b6103fe6109aa565b6001600160a01b03165f8181526005602052604090205460ff161561045757805f52600560205260405f2060ff1981541690557f9fbc8baf3d886b40fce5c05b089495702c9f5d8cb64f9c05db1a25e040d062965f80a2005b63fc6da03f60e01b5f5260045260245ffd5b3461011f575f36600319011261011f57602060ff600154166040519015158152f35b3461011f57602036600319011261011f576104bd6104a76108c2565b6104af610b59565b6001600160a01b0316610ba0565b6001600160a01b031690806104f1575b156104e8576020905b6040516001600160a01b039091168152f35b5060205f6104d6565b50805f52600560205260ff60405f2054166104cd565b3461011f575f36600319011261011f5761051f61095b565b60015460ff81161561055e5760ff19166001557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b3461011f57604036600319011261011f576105866108d8565b336001600160a01b038216036105a2576101f990600435610ad9565b63334bd91960e11b5f5260045ffd5b3461011f57604036600319011261011f576101f96004356105d06108d8565b906105e96101ef825f525f602052600160405f20015490565b610a51565b3461011f57602036600319011261011f5760206106186004355f525f602052600160405f20015490565b604051908152f35b3461011f57602036600319011261011f576106396108c2565b61064161095b565b6001600160a01b03811690811561032e573b1561069557805f52600560205260405f20600160ff198254161790557fa77e7c594c11a0d5d9d8e6a9132ac0db912dc0f34f5fb7d94860fe38d16410bd5f80a2005b6322a2d07b60e21b5f5260045260245ffd5b3461011f575f36600319011261011f5760206040517fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b268152f35b3461011f575f36600319011261011f576002545f905f5b818110610829575061070982610910565b60405192601f909101601f191683019067ffffffffffffffff8211848310176108155761073b91604052808452610910565b602083019190601f19013683375f805b82821061079f578385604051918291602083019060208452518091526040830191905f5b81811061077d575050500390f35b82516001600160a01b031684528594506020938401939092019160010161076f565b6107a882610928565b6001600160a01b03165f9081526005602052604090205460ff166107d2575b50906001019061074b565b8551821015610801576001600160a01b0316600582901b8601602001526001906107fb906108ee565b906107c7565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b61083281610928565b6001600160a01b03165f9081526005602052604090205460ff16905061085b575b6001016106f8565b916108676001916108ee565b929050610853565b3461011f57602036600319011261011f576004359063ffffffff60e01b821680920361011f57602091637965db0b60e01b81149081156108b1575b5015158152f35b6301ffc9a760e01b149050836108aa565b600435906001600160a01b038216820361011f57565b602435906001600160a01b038216820361011f57565b5f1981146108fc5760010190565b634e487b7160e01b5f52601160045260245ffd5b67ffffffffffffffff81116108155760051b60200190565b610933906002610bd1565b905460039190911b1c5f818152600460205260409020546001600160a01b0391821692911690565b335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff161561099357565b63e2517d3f60e01b5f52336004525f60245260445ffd5b335f9081527f3c1b1854ab1360abbb06c8d4c6b2672d4b8cedc5eff522ab19e51d5cb8fdbd46602052604090205460ff16156109e257565b63e2517d3f60e01b5f52336004527fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b2660245260445ffd5b5f8181526020818152604080832033845290915290205460ff1615610a3b5750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f818152602081815260408083206001600160a01b038616845290915290205460ff16610ad3575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615610ad3575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff60015416610b6557565b63d93c066560e01b5f5260045ffd5b6001600160a01b039081165f818152600460205260409020919092169055610b9d906002610be6565b90565b805f52600460205260405f205480155f14610bc957505f52600360205260405f20541515905f90565b600192909150565b8054821015610801575f5260205f2001905f90565b5f828152600182016020526040902054610ad357805490680100000000000000008210156108155782610c39610c23846001809601855584610bd1565b819391549060031b91821b915f19901b19161790565b90558054925f520160205260405f2055600190565b5f818152600360205260409020548015610ad3575f1981018181116108fc576002545f198101919082116108fc57818103610cd5575b5050506002548015610cc1575f1901610c9e816002610bd1565b8154905f199060031b1b191690556002555f5260036020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b610cf7610ce6610c23936002610bd1565b90549060031b1c9283926002610bd1565b90555f52600360205260405f20555f8080610c8456fea2646970667358221220ea32fadb6778ec3f20ac9c53d0f193b054c98ceb5e512bacf0109eee1c9f41ff64736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c1b1854ab1360abbb06c8d4c6b2672d4b8cedc5eff522ab19e51d5cb8fdbd46ad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5000000000000000000000000773541f7c38be8106ae966ca9d6fee494a0edd24000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", + "nonce": "0x1b", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x05b9cb5f0e27c04ef4da54621cf87927807adcd7e3e8c55829a1c611356751b9", + "transactionType": "CREATE2", + "contractName": "YieldSeekerFeeTracker", + "contractAddress": "0x2e11edc25e5f2391cd9225a7c107d1b41ebacc9f", + "function": null, + "arguments": [ + "0x773541F7c38BE8106AE966CA9D6fee494a0eDD24" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0x148f08", + "value": "0x0", + "input": "0x000000000000000000000000000000000000000000000000000000000000000760803461007d57601f61115538819003918201601f19168301916001600160401b038311848410176100815780849260209460405283398101031261007d57516001600160a01b03811680820361007d571561006e5761005e90610095565b50604051611016908161011f8239f35b63d92e233d60e01b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b0381165f9081525f5160206111355f395f51905f52602052604090205460ff16610119576001600160a01b03165f8181525f5160206111355f395f51905f5260205260408120805460ff191660011790553391907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a7146108b7575080630e19a3121461085a57806310a3bc08146103695780631aea105e146107f657806322bf55ef1461079b5780632338e72914610763578063248a9ca314610739578063253094371461072257806327bca7fa146106d25780632f2ff15d14610695578063328467a714610679578063331115c41461060f57806336568abe146105cb5780633c3eeafa1461057b5780633d2dca711461052257806354107a041461050b5780636468af341461041d57806378e68025146103b957806386e7f6bc1461036957806388c7fff31461034c5780638931e828146102665780638dce48671461022e57806391d14854146101e6578063a217fddf146101cc578063c415b95c146101a4578063c70276311461018d5763d547741f14610145575f80fd5b3461018957604036600319011261018957610187600435610164610920565b9061018261017d825f525f602052600160405f20015490565b610e2f565b610eef565b005b5f80fd5b346101895761018761019e36610936565b91610c51565b34610189575f366003190112610189576002546040516001600160a01b039091168152602090f35b34610189575f3660031901126101895760206040515f8152f35b34610189576040366003190112610189576101ff610920565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b34610189576020366003190112610189576001600160a01b0361024f61090a565b165f526004602052602060405f2054604051908152f35b34610189576020366003190112610189576001600160a01b0361028761090a565b16805f52600360205260405f2054815f52600460205260405f2054604051926378e6802560e01b84526004840152602083602481305afa908115610341575f916102e2575b6060935060405192835260208301526040820152f35b905060203d60201161033a575b601f8101601f1916840167ffffffffffffffff811185821017610326576020918591604052810103126101895760609251906102cc565b634e487b7160e01b5f52604160045260245ffd5b503d6102ef565b6040513d5f823e3d90fd5b34610189575f366003190112610189576020600154604051908152f35b346101895760403660031901126101895761038261090a565b61038a610920565b6001600160a01b039182165f908152600760209081526040808320949093168252928352819020549051908152f35b34610189576020366003190112610189576001600160a01b036103da61090a565b16805f52600360205260405f2054905f52600460205260405f2054908181115f146104135760209161040b916109b2565b604051908152f35b505060205f61040b565b3461018957604036600319011261018957600435610439610920565b335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff16156104f45761138882116104e5576001600160a01b031680156104d657816040917fe125ae54d7ba2b06e6f44852861516acb2dd2692cf41fb127fa03252f15b334e93600155806bffffffffffffffffffffffff60a01b600254161760025582519182526020820152a1005b63d92e233d60e01b5f5260045ffd5b630adad23360e31b5f5260045ffd5b63e2517d3f60e01b5f52336004525f60245260445ffd5b346101895761018761051c36610936565b91610a85565b346101895760403660031901126101895761053b61090a565b61271061054c600154602435610960565b0490335f52600760205260405f209060018060a01b03165f5260205261057760405f209182546109a5565b9055005b346101895760403660031901126101895761059461090a565b61059c610920565b6001600160a01b039182165f908152600660209081526040808320949093168252928352819020549051908152f35b34610189576040366003190112610189576105e4610920565b336001600160a01b038216036106005761018790600435610eef565b63334bd91960e11b5f5260045ffd5b3461018957604036600319011261018957604061062a61090a565b610632610920565b6001600160a01b039182165f818152600560209081528582209490931680825293835284812054918152600683528481209381529282529183902054835192835290820152f35b34610189575f3660031901126101895760206040516113888152f35b34610189576040366003190112610189576101876004356106b4610920565b906106cd61017d825f525f602052600160405f20015490565b610e67565b34610189576040366003190112610189576106eb61090a565b6106f3610920565b6001600160a01b039182165f908152600560209081526040808320949093168252928352819020549051908152f35b346101895761018761073336610936565b916109bf565b3461018957602036600319011261018957602061040b6004355f525f602052600160405f20015490565b34610189576020366003190112610189576001600160a01b0361078461090a565b165f526003602052602060405f2054604051908152f35b3461018957602036600319011261018957600435335f52600460205260405f206107c68282546109a5565b90556040519081527f075a2720282fdf622141dae0b048ef90a21a7e57c134c76912d19d006b3b3f6f60203392a2005b346101895761080436610936565b9190335f52600560205260405f2060018060a01b0383165f5260205261082f60405f209182546109a5565b9055335f52600660205260405f209060018060a01b03165f5260205261057760405f209182546109a5565b346101895760203660031901126101895760043561271061087d60015483610960565b04335f52600360205260405f206108958282546109a5565b905560405191825260208201525f516020610fc15f395f51905f5260403392a2005b34610189576020366003190112610189576004359063ffffffff60e01b821680920361018957602091637965db0b60e01b81149081156108f9575b5015158152f35b6301ffc9a760e01b149050836108f2565b600435906001600160a01b038216820361018957565b602435906001600160a01b038216820361018957565b6060906003190112610189576004356001600160a01b038116810361018957906024359060443590565b8181029291811591840414171561097357565b634e487b7160e01b5f52601160045260245ffd5b8115610991570490565b634e487b7160e01b5f52601260045260245ffd5b9190820180921161097357565b9190820391821161097357565b8115610a8057335f52600760205260405f2060018060a01b0382165f5260205260405f2054806109f0575b50505050565b610a3493610a2f9282851115610a7557610a0a83806109b2565b90335f52600760205260405f209060018060a01b03165f5260205260405f2055610960565b610987565b335f52600360205260405f20610a4b8282546109a5565b90556040519080825260208201525f516020610fc15f395f51905f5260403392a25f8080806109ea565b610a0a8580946109b2565b505050565b919080158015610c49575b610a8057335f8181526005602090815260408083206001600160a01b0388168085529083528184205485855260068452828520828652845282852054958552600784528285209185529252822054610b3995610b1593929180610b9d575b50808610610b755750610b06918192839186976109b2565b818111610b5b575b50506109b2565b335f52600560205260405f2060018060a01b0386165f5260205260405f20556109b2565b90335f52600660205260405f209060018060a01b03165f5260205260405f2055565b610b6e91610b68916109b2565b33610f6f565b815f610b0e565b610b06610b9793610b8a83610a2f8a87610960565b948593610a2f8a8a610960565b976109b2565b909250828610610c3157610bb181806109b2565b335f9081526007602090815260408083206001600160a01b038d16845290915290205584838115610c2957610a2f90610be993610960565b915b335f52600360205260405f20610c028482546109a5565b90556040518381528360208201525f516020610fc15f395f51905f5260403392a25f610aee565b505091610beb565b610bb1610c4284610a2f8985610960565b80926109b2565b508115610a90565b91908015610a8057335f8181526006602090815260408083206001600160a01b03881680855290835281842054858552600584528285208286528452828520549585526007845282852091855292528220549294909392909190839080610da5575b50841015610d49575083151580610d40575b610d10575b50505050335f52600560205260405f2060018060a01b0382165f526020525f6040812055335f52600660205260405f209060018060a01b03165f526020525f6040812055565b610d1d92610a2f91610960565b818111610d2c575b8080610cca565b610d3991610b68916109b2565b5f80610d25565b50821515610cc5565b839293610d59575b505050505050565b84610b1592610b06610d7286610a2f89610d7a9b610960565b9384926109b2565b90335f52600660205260405f209060018060a01b03165f5260205260405f20555f8080808080610d51565b610de59250610a2f9080831115610e2457610dc081806109b2565b335f52600760205260405f2060018060a01b038b165f5260205260405f205584610960565b335f52600360205260405f20610dfc8282546109a5565b90556040518181528160208201525f516020610fc15f395f51905f5260403392a2825f610cb3565b610dc08380926109b2565b5f8181526020818152604080832033845290915290205460ff1615610e515750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f818152602081815260408083206001600160a01b038616845290915290205460ff16610ee9575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615610ee9575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b9060405f516020610fc15f395f51905f5291612710610f9060015483610960565b049360018060a01b031693845f526003602052825f20610fb18282546109a5565b905582519182526020820152a256fe4cf3d44e1da794302b8d37b1bd4a8dbdc04caf6afe8cef3bdeda69040f09c0dba2646970667358221220628eaf77d13a10ec85254216fdd6e8dc9b27b1c5ad22a262ce71aad58baa54bd64736f6c634300081c0033ad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5000000000000000000000000773541f7c38be8106ae966ca9d6fee494a0edd24", + "nonce": "0x1c", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionType": "CREATE2", + "contractName": "YieldSeekerERC4626Adapter", + "contractAddress": "0x98474be8d188f450fef65b5c6d290d333eb74a2f", + "function": null, + "arguments": null, + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0xb7a10", + "value": "0x0", + "input": "0x000000000000000000000000000000000000000000000000000000000000000760a08060405234602157306080526108db908161002682396080518160ab0152f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631cff79cd1461004a5780632e1a7d4d14610045578063658ce9d9146100455763b6b55f2514610045575f80fd5b61012a565b6040366003190112610126576004356001600160a01b0381168103610126576024359067ffffffffffffffff821161012657366023830112156101265781600401359167ffffffffffffffff831161012657366024848301011161012657307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146101175760209260409260246100eb930190610180565b815192839181835280519182918282860152018484015e5f828201840152601f01601f19168101030190f35b633954108560e21b5f5260045ffd5b5f80fd5b3461012657602036600319011261012657633954108560e21b5f5260045ffd5b90601f8019910116810190811067ffffffffffffffff82111761016c57604052565b634e487b7160e01b5f52604160045260245ffd5b90915f9281600411806101265781356001600160e01b03191663b6b55f2560e01b81146104ea5763658ce9d960e01b811461039f57632e1a7d4d60e01b146101d1576311fa59f360e11b8552600485fd5b90919293506101265780600460209201928391010312610126576040516338d52e0f60e01b81526001600160a01b03831692913590602081600481875afa801561032257610226915f91610370575b506107b5565b80156103615760405192635d043b2960e11b84528160048501523060248501523060448501526020846064815f855af1938415610322575f9461032d575b506040518281528460208201527f91fb9d98b786c57d74c099ccd2beca1739e9f6a81fb49001ca465c4b7591bbe260403092a36001600160a01b036102a761083f565b1691823b156101265760405163c702763160e01b81526001600160a01b03919091166004820152602481019190915260448101839052905f908290606490829084905af1801561032257610312575b506040519060208201526020815261030f60408261014a565b90565b5f61031c9161014a565b5f6102f6565b6040513d5f823e3d90fd5b9093506020813d602011610359575b816103496020938361014a565b810103126101265751925f610264565b3d915061033c565b631f2a200560e01b5f5260045ffd5b610392915060203d602011610398575b61038a818361014a565b81019061050a565b5f610220565b503d610380565b5090919293506101265780600460209201928391010312610126576040516338d52e0f60e01b8152903591906020816004816001600160a01b0386165afa908115610322575f916104cb575b50821580156104c0575b6104ad576040516370a0823160e01b815230600482015290602090829060249082906001600160a01b03165afa908115610322575f9161047b575b508281029281840414901517156104675761271061044f920490610529565b6040519060208201526020815261030f60408261014a565b634e487b7160e01b5f52601160045260245ffd5b90506020813d6020116104a5575b816104966020938361014a565b8101031261012657515f610430565b3d9150610489565b8263aa31867360e01b5f5260045260245ffd5b5061271083116103f5565b6104e4915060203d6020116103985761038a818361014a565b5f6103eb565b50506020919350600481019384910103126101265761044f913590610529565b9081602091031261012657516001600160a01b03811681036101265790565b6040516338d52e0f60e01b81526001600160a01b03821693929190602081600481885afa801561032257610563915f9161037057506107b5565b8115610361576040516338d52e0f60e01b8152602081600481885afa908115610322575f91610796575b5060018060a01b031660405163095ea7b360e01b5f52856004528360245260205f60448180865af19060015f5114821615610787575b604052156106d2575b50604051636e553f6560e01b815260048101839052306024820152936020856044815f855af1948515610322575f9561069e575b506040518381528560208201527ff5681f9d0db1b911ac18ee83d515a1cf1051853a9eae418316a2fdf7dea427c560403092a3836001600160a01b0361064461083f565b16803b1561012657604051630d75082f60e11b81526001600160a01b0393909316600484015260248301939093526044820152905f908290606490829084905af18015610322576106925750565b5f61069c9161014a565b565b9094506020813d6020116106ca575b816106ba6020938361014a565b810103126101265751935f610600565b3d91506106ad565b60405163095ea7b360e01b5f52856004525f60245260205f60448180865af19060015f511482161561076f575b6040521561073c5760405163095ea7b360e01b5f52856004528360245260205f60448180865af19060015f511482161561074e575b6040526105cc575b635274afe760e01b5f5260045260245ffd5b90600181151661076657823b15153d15161690610734565b503d5f823e3d90fd5b90600181151661076657823b15153d151616906106ff565b90823b15153d151616906105c3565b6107af915060203d6020116103985761038a818361014a565b5f61058d565b60405163cdf456e160e01b8152602081600481305afa908115610322575f916107fd575b506001600160a01b039081169116036107ee57565b634847234360e01b5f5260045ffd5b90506020813d602011610837575b816108186020938361014a565b8101031261012657516001600160a01b0381168103610126575f6107d9565b3d915061080b565b604051633325e1df60e01b8152602081600481305afa908115610322575f91610866575090565b90506020813d60201161089d575b816108816020938361014a565b8101031261012657516001600160a01b03811681036101265790565b3d915061087456fea26469706673582212200064266f7b4cb7c2fcfdeeeb8df04821e1db57a03d9d596ae307decff09a512364736f6c634300081c0033", + "nonce": "0x1d", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x0daabdfb07a8cd04d02c33141e1a96204f9fd4eb6cc254b736e46fe5155d46c7", + "transactionType": "CREATE2", + "contractName": "YieldSeekerMerklAdapter", + "contractAddress": "0x063e92a335be85a7ae6d2de28397dcf40423c45f", + "function": null, + "arguments": null, + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0xf2dbd", + "value": "0x0", + "input": "0x000000000000000000000000000000000000000000000000000000000000000760a0806040523460225730608052610b4f90816100278239608051816101360152f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631cff79cd146100d7576371ee95c01461002f575f80fd5b346100d35760803660031901126100d3576004356001600160401b0381116100d35761005f9036906004016101b1565b50506024356001600160401b0381116100d3576100809036906004016101b1565b50506044356001600160401b0381116100d3576100a19036906004016101b1565b50506064356001600160401b0381116100d3576100c29036906004016101b1565b5050633954108560e21b5f5260045ffd5b5f80fd5b60403660031901126100d3576004356001600160a01b03811681036100d357602435906001600160401b0382116100d357366023830112156100d3578160040135916001600160401b0383116100d35736602484830101116100d357307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146101a257602092604092602461017693019061029b565b815192839181835280519182918282860152018484015e5f828201840152601f01601f19168101030190f35b633954108560e21b5f5260045ffd5b9181601f840112156100d3578235916001600160401b0383116100d3576020808501948460051b0101116100d357565b90601f801991011681019081106001600160401b0382111761020257604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b0381116102025760051b60200190565b9080601f830112156100d35781359061024582610216565b9261025360405194856101e1565b82845260208085019360051b8201019182116100d357602001915b81831061027b5750505090565b82356001600160a01b03811681036100d35781526020928301920161026e565b905f92806004116100d35781356001600160e01b0319166301c7ba5760e61b146102ce576311fa59f360e11b8452600484fd5b810191608082840360031901126100d35760048201356001600160401b0381116100d3578360046103019285010161022d565b60248301356001600160401b0381116100d3578460046103239286010161022d565b60448401356001600160401b0381116100d357840193856023860112156100d35760048501359061035382610216565b9561036160405197886101e1565b8287526020870160206004829560051b84010101918983116100d357602401905b828210610a1d575050506064810135906001600160401b0382116100d3570190866023830112156100d3576004820135916103bc83610216565b976103ca604051998a6101e1565b838952602089019160206004849660051b83010101908282116100d35760248101935b8285106109995750505050508251965f9661040789610216565b9661041560405198896101e1565b898852601f196104248b610216565b013660208a01375f5b8a8110610926575061043e89610216565b9761044c604051998a6101e1565b898952601f1961045b8b610216565b013660208b013761046b8a610216565b9a6104796040519c8d6101e1565b8a8c52601f196104888c610216565b013660208e01375f915f5b828110610858575050505060018060a01b031694853b156100d3579060206104ef6104dd9896959493604051998a986301c7ba5760e61b8a52608060048b015260848a0190610a77565b8881036003190160248a015290610a77565b8681036003190160448801529151808352910192905f5b81811061083f5750505060031984830301606485015251808252602082019160208260051b82010193925f915b8383106107e357505050505091815f81819503925af180156107d8576107c3575b5060405163cdf456e160e01b8152602081600481305afa9081156107b8578591610772575b506001600160a01b031692845b8381106105c857505050505060405190602082018281106001600160401b038211176105b457604052815290565b634e487b7160e01b82526041600452602482fd5b6001600160a01b036105da8284610a2d565b516040516370a0823160e01b81523060048201529116602082602481845afa918215610767578892610734575b506106128386610a2d565b5180830392808411610720570361062e575b5050600101610586565b8087036106b157506001600160a01b03610646610ab3565b1690813b156106ad57879160248392604051948593849263070cd18960e11b845260048401525af180156106a257908791610689575b50506001905b905f610624565b81610693916101e1565b61069e57855f61067c565b8580fd5b6040513d89823e3d90fd5b8780fd5b906001600160a01b036106c2610ab3565b1691823b1561071c579060448992836040519586948593633d2dca7160e01b8552600485015260248401525af180156106a257908791610707575b5050600190610682565b81610711916101e1565b61069e57855f6106fd565b8880fd5b634e487b7160e01b8a52601160045260248afd5b9091506020813d821161075f575b8161074f602093836101e1565b810103126100d35751905f610607565b3d9150610742565b6040513d8a823e3d90fd5b90506020813d6020116107b0575b8161078d602093836101e1565b810103126107ac57516001600160a01b03811681036107ac575f610579565b8480fd5b3d9150610780565b6040513d87823e3d90fd5b6107d09194505f906101e1565b5f925f610554565b6040513d5f823e3d90fd5b919395509193601f19828203018352855190602080835192838152019201905f905b8082106108275750505060208060019297019301930190928795949293610533565b90919260208060019286518152019401920190610805565b8251855288965060209485019490920191600101610506565b6108628183610a2d565b51610870575b600101610493565b928d610890826001600160a01b03610888888f610a2d565b511692610a2d565b52602460206001600160a01b036108a7878e610a2d565b5116604051928380926370a0823160e01b82523060048301525afa9081156107d8578d905f926108f2575b50916108ea916108e482600195610a2d565b52610a55565b939050610868565b9150506020813d821161091e575b8161090d602093836101e1565b810103126100d357518c60016108d2565b3d9150610900565b5f5f5b82811061095a575b5015610940575b60010161042d565b98610952600191826108e48d8d610a2d565b999050610938565b6001600160a01b0361096c848b610a2d565b51166001600160a01b03610980838c610a2d565b51161461098f57600101610929565b505060015f610931565b84356001600160401b0381116100d35760049083010184603f820112156100d3576020810135906109c982610216565b916109d760405193846101e1565b8083526020808085019260051b84010101918783116100d357604001905b828210610a0d575050508152602094850194016103ed565b81358152602091820191016109f5565b8135815260209182019101610382565b8051821015610a415760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b5f198114610a635760010190565b634e487b7160e01b5f52601160045260245ffd5b90602080835192838152019201905f5b818110610a945750505090565b82516001600160a01b0316845260209384019390920191600101610a87565b604051633325e1df60e01b8152602081600481305afa9081156107d8575f91610ada575090565b90506020813d602011610b11575b81610af5602093836101e1565b810103126100d357516001600160a01b03811681036100d35790565b3d9150610ae856fea2646970667358221220cc6b15bfa4e588e3911b15581c2b95f31fa77e11b408420db391a4a3ac8299c464736f6c634300081c0033", + "nonce": "0x1e", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xece501c1f307b9929175776c6911d75d94e3618de1c872bb2f6a8b4676754b4e", + "transactionType": "CREATE2", + "contractName": "YieldSeekerZeroXAdapter", + "contractAddress": "0x153e4801852249d1f7d05ccb13c1d1cf8ae7c466", + "function": null, + "arguments": [ + "0x0000000000001fF3684f28c67538d4D072C22734", + "0x773541F7c38BE8106AE966CA9D6fee494a0eDD24", + "0xF8CBf6437d2473eC59885299Af38D9A13cE97ecA", + "false" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0x193d2e", + "value": "0x0", + "input": "0x000000000000000000000000000000000000000000000000000000000000000760c03461011457601f61162c38819003918201601f19168301916001600160401b0383118484101761011857808492608094604052833981010312610114576100478161012c565b906100546020820161012c565b9060606100636040830161012c565b9101519283151580940361011457306080526001600160a01b03811615610105576001600160a01b038316156100f6576001600160a01b038216156100f6576100b8926100b29160a052610140565b506101b6565b5060ff801960015416911617600155604051611382908161024a82396080518181816107080152610f0b015260a0518181816106650152610d9f0152f35b63d92e233d60e01b5f5260045ffd5b631440bbc360e11b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b038216820361011457565b6001600160a01b0381165f9081525f51602061160c5f395f51905f52602052604090205460ff166101b1576001600160a01b03165f8181525f51602061160c5f395f51905f5260205260408120805460ff191660011790553391905f5160206115cc5f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f5160206115ec5f395f51905f52602052604090205460ff166101b1576001600160a01b03165f8181525f5160206115ec5f395f51905f5260205260408120805460ff191660011790553391907fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b26905f5160206115cc5f395f51905f529080a460019056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610761575080631cff79cd146106ce57806320df4359146106945780632275159314610650578063248a9ca31461061e5780632f2ff15d146105e157806336568abe1461059d5780635e561771146104d95780637464df1d146104b7578063846a77031461046657806391d148541461041e57806399b39dc114610328578063a217fddf1461030e578063b5924e0b146102ac578063b5b2f1ef146101ed578063d547741f146101a9578063e2450d7c1461015a5763e36e2e37146100e2575f80fd5b34610156576020366003190112610156576100fb6107b4565b610103610ff2565b6001600160a01b031680156101475761011b8161128c565b61012157005b7f4ac723403fd9e3f5fbe7116bb75c15981bd5cb9ca32255900e5c29d9597cbee25f80a2005b63d92e233d60e01b5f5260045ffd5b5f80fd5b60c03660031901126101565761016e6107b4565b506101776107ca565b5060843567ffffffffffffffff8111610156576101989036906004016107e0565b5050633954108560e21b5f5260045ffd5b34610156576040366003190112610156576101eb6004356101c86107ca565b906101e66101e1825f525f602052600160405f20015490565b611041565b611101565b005b34610156575f366003190112610156576040518060206002549283815201809260025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace905f5b818110610296575050508161024b91038261084c565b604051918291602083019060208452518091526040830191905f5b818110610274575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610266565b8254845260209093019260019283019201610235565b34610156576020366003190112610156576004358015158091036101565760207f74c88bdf6980e6d2f0199be2ccaacfb3770508c3d4ce8a831fe820e7f7b4f404916102f6610ff2565b60ff196001541660ff821617600155604051908152a1005b34610156575f3660031901126101565760206040515f8152f35b346101565760203660031901126101565760043567ffffffffffffffff811161015657366023820112156101565780600401359067ffffffffffffffff8211610156576024810190602436918460051b01011161015657610387610ff2565b5f5b82811061039257005b6001600160a01b036103ad6103a8838686610fba565b610fde565b1615610147576001906103d56001600160a01b036103cf6103a8848888610fba565b1661128c565b6103e0575b01610389565b818060a01b036103f46103a8838787610fba565b167f4ac723403fd9e3f5fbe7116bb75c15981bd5cb9ca32255900e5c29d9597cbee25f80a26103da565b34610156576040366003190112610156576104376107ca565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101565760203660031901126101565761047f6107b4565b60ff600154168015610499575b6020906040519015158152f35b5060018060a01b03165f526003602052602060405f2054151561048c565b34610156575f36600319011261015657602060ff600154166040519015158152f35b34610156576020366003190112610156576104f26107b4565b335f9081527f3c1b1854ab1360abbb06c8d4c6b2672d4b8cedc5eff522ab19e51d5cb8fdbd46602052604090205460ff1615610566576001600160a01b031661053a816111b7565b61054057005b7f3b00e462401f0dd38135e28206d1d0ad5dc97314acd8f937e1b9cb6b50a5869f5f80a2005b63e2517d3f60e01b5f52336004527fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b2660245260445ffd5b34610156576040366003190112610156576105b66107ca565b336001600160a01b038216036105d2576101eb90600435611101565b63334bd91960e11b5f5260045ffd5b34610156576040366003190112610156576101eb6004356106006107ca565b906106196101e1825f525f602052600160405f20015490565b611079565b346101565760203660031901126101565760206106486004355f525f602052600160405f20015490565b604051908152f35b34610156575f366003190112610156576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b34610156575f3660031901126101565760206040517fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b268152f35b6040366003190112610156576106e26107b4565b60243567ffffffffffffffff8111610156576107029036906004016107e0565b909190307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146107525761074e926107429261089e565b6040519182918261080e565b0390f35b633954108560e21b5f5260045ffd5b34610156576020366003190112610156576004359063ffffffff60e01b821680920361015657602091637965db0b60e01b81149081156107a3575b5015158152f35b6301ffc9a760e01b1490508361079c565b600435906001600160a01b038216820361015657565b602435906001600160a01b038216820361015657565b9181601f840112156101565782359167ffffffffffffffff8311610156576020838186019501011161015657565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b35906001600160a01b038216820361015657565b90601f8019910116810190811067ffffffffffffffff82111761086e57604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff811161086e57601f01601f191660200190565b5f92806004116101565782356001600160e01b031916633891435f60e21b146108d0576311fa59f360e11b8452600484fd5b9192509082019060c08383036003190112610156576108f160048401610838565b916108fe60248501610838565b9160448501359360648601359560848101359067ffffffffffffffff82116101565701908360238301121561015657600482013561093b81610882565b92610949604051948561084c565b81845260208401956024828401011161015657815f926024602093018837840101526001600160a01b0390811694811693906109836112e6565b168514610fab576001600160a01b0361099a6112e6565b168403610f9c5785158015610f94575b610f855773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee851495861580610eee575b610edb578615610d8e5780804710610d7857505b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8514908115610d155747925b8815610caa575f91829147965b5191885af13d15610ca2573d90610a2682610882565b91610a34604051938461084c565b82523d5f602084013e5b15610c7e575015610c1b5747955b15610bae57610a5f610a65924790611181565b95611181565b94808610610b98575060405191838352602083015283604083015284606083015260018060a01b0316907fd6d4f5681c246c9f42c203e287975af1601f8df8035a9251f79aab5c8f09e2f860803092a3604051633325e1df60e01b8152602081600481305afa908115610b4b575f91610b56575b506001600160a01b031691823b156101565760645f92836040519586948593632530943760e01b8552600485015260248401528760448401525af18015610b4b57610b3b575b5060405190602082015260208152610b3860408261084c565b90565b5f610b459161084c565b5f610b1f565b6040513d5f823e3d90fd5b90506020813d602011610b90575b81610b716020938361084c565b8101031261015657516001600160a01b0381168103610156575f610ad9565b3d9150610b64565b85630583371760e31b5f5260045260245260445ffd5b6040516370a0823160e01b8152306004820152602081602481895afa908115610b4b575f91610be7575b50610a6592610a5f9190611181565b90506020813d602011610c13575b81610c026020938361084c565b810103126101565751610a65610bd8565b3d9150610bf5565b6040516370a0823160e01b8152306004820152602081602481885afa908115610b4b575f91610c4c575b5095610a4c565b90506020813d602011610c76575b81610c676020938361084c565b8101031261015657515f610c45565b3d9150610c5a565b604051600162605a6b60e01b03198152908190610c9e906004830161080e565b0390fd5b606090610a3e565b906040516370a0823160e01b81523060048201526020816024818c5afa908115610b4b575f91610ce1575b50905f92839296610a10565b9190506020823d602011610d0d575b81610cfd6020938361084c565b810103126101565790515f610cd5565b3d9150610cf0565b6040516370a0823160e01b81523060048201526020816024818a5afa908115610b4b575f91610d46575b5092610a03565b90506020813d602011610d70575b81610d616020938361084c565b8101031261015657515f610d3f565b3d9150610d54565b47633ebbc33760e01b5f5260045260245260445ffd5b60405163095ea7b360e01b5f9081527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166004819052602484905290929091602084604481808d5af19060015f5114821615610ecc575b60405215610dfd575b50506109e2565b60405163095ea7b360e01b5f52826004525f60245260205f604481808d5af19060015f5114821615610eb4575b60405215610ea1576040519163095ea7b360e01b5f5260045260245260205f604481808b5af19060015f5114821615610e80575b60405215610e6d575f80610df6565b85635274afe760e01b5f5260045260245ffd5b906001811516610e9857873b15153d15161690610e5e565b503d5f823e3d90fd5b87635274afe760e01b5f5260045260245ffd5b906001811516610e9857893b15153d15161690610e2a565b90893b15153d15161690610ded565b85631a7852a960e31b5f5260045260245ffd5b5060405163846a770360e01b8152600481018790526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610b4b575f91610f4a575b50156109ce565b90506020813d602011610f7d575b81610f656020938361084c565b8101031261015657518015158103610156575f610f43565b3d9150610f58565b631f2a200560e01b5f5260045ffd5b5086156109aa565b634847234360e01b5f5260045ffd5b6326ec736f60e11b5f5260045ffd5b9190811015610fca5760051b0190565b634e487b7160e01b5f52603260045260245ffd5b356001600160a01b03811681036101565790565b335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff161561102a57565b63e2517d3f60e01b5f52336004525f60245260445ffd5b5f8181526020818152604080832033845290915290205460ff16156110635750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f818152602081815260408083206001600160a01b038616845290915290205460ff166110fb575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16156110fb575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b9190820391821161118e57565b634e487b7160e01b5f52601160045260245ffd5b8054821015610fca575f5260205f2001905f90565b5f8181526003602052604090205480156110fb575f19810181811161118e576002545f1981019190821161118e5781810361123e575b505050600254801561122a575f19016112078160026111a2565b8154905f199060031b1b191690556002555f5260036020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b61127661124f6112609360026111a2565b90549060031b1c92839260026111a2565b819391549060031b91821b915f19901b19161790565b90555f52600360205260405f20555f80806111ed565b805f52600360205260405f2054155f146112e1576002546801000000000000000081101561086e576112ca61126082600185940160025560026111a2565b9055600254905f52600360205260405f2055600190565b505f90565b60405163cdf456e160e01b8152602081600481305afa908115610b4b575f9161130d575090565b90506020813d602011611344575b816113286020938361084c565b8101031261015657516001600160a01b03811681036101565790565b3d915061131b56fea264697066735822122040cbe3e5bcc4f8aa428d8d8641805806464196752519cc462d68b2096955122b64736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c1b1854ab1360abbb06c8d4c6b2672d4b8cedc5eff522ab19e51d5cb8fdbd46ad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb50000000000000000000000000000000000001ff3684f28c67538d4d072c22734000000000000000000000000773541f7c38be8106ae966ca9d6fee494a0edd24000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca0000000000000000000000000000000000000000000000000000000000000000", + "nonce": "0x1f", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x0b9c670188616682af66fc5ac039e2f525d3d027e4ffba5e69449c38a023b49a", + "transactionType": "CREATE2", + "contractName": "YieldSeekerAaveV3Adapter", + "contractAddress": "0xc6b0eeff559a23187506440f8c62f58aea02fb4e", + "function": null, + "arguments": null, + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0xdb93a", + "value": "0x0", + "input": "0x000000000000000000000000000000000000000000000000000000000000000760a0806040523460215730608052610ac7908161002682396080518160ab0152f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631cff79cd1461004a5780632e1a7d4d14610045578063658ce9d9146100455763b6b55f2514610045575f80fd5b61012a565b6040366003190112610126576004356001600160a01b0381168103610126576024359067ffffffffffffffff821161012657366023830112156101265781600401359167ffffffffffffffff831161012657366024848301011161012657307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146101175760209260409260246100eb930190610180565b815192839181835280519182918282860152018484015e5f828201840152601f01601f19168101030190f35b633954108560e21b5f5260045ffd5b5f80fd5b3461012657602036600319011261012657633954108560e21b5f5260045ffd5b90601f8019910116810190811067ffffffffffffffff82111761016c57604052565b634e487b7160e01b5f52604160045260245ffd5b90915f9281600411806101265781356001600160e01b03191663b6b55f2560e01b81146105605763658ce9d960e01b811461045d57632e1a7d4d60e01b146101d1576311fa59f360e11b8552600485fd5b909192935061012657806004602092019283910103126101265735906101fe6101f982610954565b6109a1565b6040516370a0823160e01b8152306004820152906001600160a01b038116602083602481845afa928315610388575f93610429575b50831561041a576040516358b50cef60e11b815293602085600481855afa948515610388575f956103f9575b50604051633a9ae92360e11b8152602081600481865afa8015610388575f9660209288926103c7575b50604051631a4ca37b60e21b81526001600160a01b03918216600482015260248101859052306044820152978892606492849291165af1948515610388575f95610393575b506040519081528460208201527f91fb9d98b786c57d74c099ccd2beca1739e9f6a81fb49001ca465c4b7591bbe260403092a36001600160a01b03610310610a2b565b1691823b15610126576040516315041e8160e21b81526001600160a01b03929092166004830152602482018490526044820152905f908290606490829084905af1801561038857610378575b506040519060208201526020815261037560408261014a565b90565b5f6103829161014a565b5f61035c565b6040513d5f823e3d90fd5b9094506020813d6020116103bf575b816103af6020938361014a565b810103126101265751935f6102cd565b3d91506103a2565b60649192506103eb90843d86116103f2575b6103e3818361014a565b810190610935565b9190610288565b503d6103d9565b61041391955060203d6020116103f2576103e3818361014a565b935f61025f565b631f2a200560e01b5f5260045ffd5b9092506020813d602011610455575b816104456020938361014a565b810103126101265751915f610233565b3d9150610438565b50909192935061012657806004602092019283910103126101265735906001600160a01b0361048b82610954565b1682158015610555575b610542576020602491604051928380926370a0823160e01b82523060048301525afa908115610388575f91610510575b508281029281840414901517156104fc576127106104e492049061057c565b6040519060208201526020815261037560408261014a565b634e487b7160e01b5f52601160045260245ffd5b90506020813d60201161053a575b8161052b6020938361014a565b8101031261012657515f6104c5565b3d915061051e565b8263aa31867360e01b5f5260045260245ffd5b506127108311610495565b5050602091935060048101938491010312610126576104e49135905b91909161058b6101f982610954565b5f90831561041a576040516358b50cef60e11b8152906001600160a01b038116602083600481845afa928315610388575f93610914575b50604051633a9ae92360e11b8152602081600481855afa908115610388575f916108f5575b506040516370a0823160e01b815230600482015293602085602481865afa948515610388575f956108c1575b5060405163095ea7b360e01b5f9081526001600160a01b03938416600481905260248b905293929092169160209060448180865af19060015f51148216156108b2575b604052156107fd575b813b15610126575f9160848392604051948593849263617ba03760e01b845260048401528c60248401523060448401528160648401525af18015610388576107e8575b506040516370a0823160e01b815230600482015292602084602481855afa9384156107dd5785946107a9575b508303928311610795576040518681528360208201527ff5681f9d0db1b911ac18ee83d515a1cf1051853a9eae418316a2fdf7dea427c560403092a390938491906001600160a01b0361071f610a2b565b1691823b1561079157604051630d75082f60e11b81526001600160a01b039190911660048201526024810191909152604481019290925282908290606490829084905af1801561078657610771575050565b61077c82809261014a565b6107835750565b80fd5b6040513d84823e3d90fd5b8480fd5b634e487b7160e01b84526011600452602484fd5b9093506020813d6020116107d5575b816107c56020938361014a565b810103126101265751925f6106ce565b3d91506107b8565b6040513d87823e3d90fd5b6107f59194505f9061014a565b5f925f6106a2565b60405163095ea7b360e01b5f52826004525f60245260205f60448180865af19060015f511482161561089a575b604052156108675760405163095ea7b360e01b5f52826004528860245260205f60448180865af19060015f5114821615610879575b60405261065f575b635274afe760e01b5f5260045260245ffd5b90600181151661089157823b15153d1516169061085f565b503d5f823e3d90fd5b90600181151661089157823b15153d1516169061082a565b90823b15153d15161690610656565b9094506020813d6020116108ed575b816108dd6020938361014a565b810103126101265751935f610613565b3d91506108d0565b61090e915060203d6020116103f2576103e3818361014a565b5f6105e7565b61092e91935060203d6020116103f2576103e3818361014a565b915f6105c2565b9081602091031261012657516001600160a01b03811681036101265790565b6040516358b50cef60e11b815290602090829060049082906001600160a01b03165afa908115610388575f91610988575090565b610375915060203d6020116103f2576103e3818361014a565b60405163cdf456e160e01b8152602081600481305afa908115610388575f916109e9575b506001600160a01b039081169116036109da57565b634847234360e01b5f5260045ffd5b90506020813d602011610a23575b81610a046020938361014a565b8101031261012657516001600160a01b0381168103610126575f6109c5565b3d91506109f7565b604051633325e1df60e01b8152602081600481305afa908115610388575f91610a52575090565b90506020813d602011610a89575b81610a6d6020938361014a565b8101031261012657516001600160a01b03811681036101265790565b3d9150610a6056fea2646970667358221220689633d3b0ae0d4a27c990ba06279bd71a8e147fb45da6d1813ff2c60d51004f64736f6c634300081c0033", + "nonce": "0x20", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x8024f30e19b3a959805a95c7250ce1b4a96115ec7534a8b1fd06a5100cf1d4f1", + "transactionType": "CREATE2", + "contractName": "YieldSeekerCompoundV3Adapter", + "contractAddress": "0x65b65d4bf565b3ba92371ccd0b157da1bcb3b1a8", + "function": null, + "arguments": null, + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0xde6da", + "value": "0x0", + "input": "0x000000000000000000000000000000000000000000000000000000000000000760a0806040523460215730608052610aee908161002682396080518160ab0152f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631cff79cd1461004a5780632e1a7d4d14610045578063658ce9d9146100455763b6b55f2514610045575f80fd5b61012a565b6040366003190112610126576004356001600160a01b0381168103610126576024359067ffffffffffffffff821161012657366023830112156101265781600401359167ffffffffffffffff831161012657366024848301011161012657307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146101175760209260409260246100eb930190610180565b815192839181835280519182918282860152018484015e5f828201840152601f01601f19168101030190f35b633954108560e21b5f5260045ffd5b5f80fd5b3461012657602036600319011261012657633954108560e21b5f5260045ffd5b90601f8019910116810190811067ffffffffffffffff82111761016c57604052565b634e487b7160e01b5f52604160045260245ffd5b90915f9281600411806101265781356001600160e01b03191663b6b55f2560e01b81146105ef5763658ce9d960e01b81146104ec57632e1a7d4d60e01b146101d1576311fa59f360e11b8552600485fd5b93929361012657806004602092019283910103126101265735916101fc6101f78261096e565b6109bb565b6040516370a0823160e01b8152306004820152906001600160a01b038116602083602481845afa92831561043b575f936104b8575b5084156104a95760405163c55dae6360e01b8152602081600481855afa90811561043b575f9161047a575b506040516370a0823160e01b8152306004820152906001600160a01b03811690602083602481855afa92831561043b575f93610446575b50833b156101265760405163f3fef3a360e01b81526001600160a01b03919091166004820152602481018890525f8160448183885af1801561043b5761041f575b50906020602492604051938480926370a0823160e01b82523060048301525afa80156104145786906103e0575b61030b9250610a45565b946040519081528560208201527f91fb9d98b786c57d74c099ccd2beca1739e9f6a81fb49001ca465c4b7591bbe260403092a36001600160a01b0361034e610a52565b1690813b156103dc576040516315041e8160e21b81526001600160a01b0391909116600482015260248101859052604481019290925282908290606490829084905af180156103d1576103b9575b5050604051906020820152602081526103b660408261014a565b90565b6103c482809261014a565b6103ce578061039c565b80fd5b6040513d84823e3d90fd5b8380fd5b506020823d60201161040c575b816103fa6020938361014a565b810103126101265761030b9151610301565b3d91506103ed565b6040513d88823e3d90fd5b6024929196505f61042f9161014a565b60205f969192506102d4565b6040513d5f823e3d90fd5b9092506020813d602011610472575b816104626020938361014a565b810103126101265751915f610293565b3d9150610455565b61049c915060203d6020116104a2575b610494818361014a565b81019061094f565b5f61025c565b503d61048a565b631f2a200560e01b5f5260045ffd5b9092506020813d6020116104e4575b816104d46020938361014a565b810103126101265751915f610231565b3d91506104c7565b50909192935061012657806004602092019283910103126101265735906001600160a01b0361051a8261096e565b16821580156105e4575b6105d1576020602491604051928380926370a0823160e01b82523060048301525afa90811561043b575f9161059f575b5082810292818404149015171561058b5761271061057392049061060b565b604051906020820152602081526103b660408261014a565b634e487b7160e01b5f52601160045260245ffd5b90506020813d6020116105c9575b816105ba6020938361014a565b8101031261012657515f610554565b3d91506105ad565b8263aa31867360e01b5f5260045260245ffd5b506127108311610524565b5050602091935060048101938491010312610126576105739135905b91909161061a6101f78261096e565b5f9083156104a95760405163c55dae6360e01b81526001600160a01b0382169190602081600481865afa90811561043b575f91610930575b506040516370a0823160e01b815230600482015290602082602481875afa91821561043b575f926108fc575b5060018060a01b03811660405163095ea7b360e01b5f52856004528860245260205f60448180865af19060015f51148216156108ed575b60405215610838575b50833b1561012657604051631e573fb760e31b81526001600160a01b03919091166004820152602481018790525f8160448183885af1801561043b57610823575b506040516370a0823160e01b815230600482015290602082602481875afa80156108185785906107e4575b6107349250610a45565b916040518681528360208201527ff5681f9d0db1b911ac18ee83d515a1cf1051853a9eae418316a2fdf7dea427c560403092a390938491906001600160a01b0361077c610a52565b1691823b156107e057604051630d75082f60e11b81526001600160a01b039190911660048201526024810191909152604481019290925282908290606490829084905af180156103d1576107ce575050565b6107d982809261014a565b6103ce5750565b8480fd5b506020823d602011610810575b816107fe6020938361014a565b8101031261012657610734915161072a565b3d91506107f1565b6040513d87823e3d90fd5b6108309194505f9061014a565b5f925f6106ff565b60405163095ea7b360e01b5f52856004525f60245260205f60448180865af19060015f51148216156108d5575b604052156108a25760405163095ea7b360e01b5f52856004528860245260205f60448180865af19060015f51148216156108b4575b6040526106be575b635274afe760e01b5f5260045260245ffd5b9060018115166108cc57823b15153d1516169061089a565b503d5f823e3d90fd5b9060018115166108cc57823b15153d15161690610865565b90823b15153d151616906106b5565b9091506020813d602011610928575b816109186020938361014a565b810103126101265751905f61067e565b3d915061090b565b610949915060203d6020116104a257610494818361014a565b5f610652565b9081602091031261012657516001600160a01b03811681036101265790565b60405163c55dae6360e01b815290602090829060049082906001600160a01b03165afa90811561043b575f916109a2575090565b6103b6915060203d6020116104a257610494818361014a565b60405163cdf456e160e01b8152602081600481305afa90811561043b575f91610a03575b506001600160a01b039081169116036109f457565b634847234360e01b5f5260045ffd5b90506020813d602011610a3d575b81610a1e6020938361014a565b8101031261012657516001600160a01b0381168103610126575f6109df565b3d9150610a11565b9190820391821161058b57565b604051633325e1df60e01b8152602081600481305afa90811561043b575f91610a79575090565b90506020813d602011610ab0575b81610a946020938361014a565b8101031261012657516001600160a01b03811681036101265790565b3d9150610a8756fea264697066735822122067667956e7bfb951b8c681a473936ec527b99118312664881c48f3ca1c7b6c5964736f6c634300081c0033", + "nonce": "0x21", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x15609bceeca492c7f63ce7d6b141755d1449f86deffee156521720899df6a27d", + "transactionType": "CREATE2", + "contractName": "YieldSeekerCompoundV2Adapter", + "contractAddress": "0x976cedebd26e4d78cbfdb789186510ab9a5747e3", + "function": null, + "arguments": null, + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0xe7b4f", + "value": "0x0", + "input": "0x000000000000000000000000000000000000000000000000000000000000000760a0806040523460215730608052610abd908161002682396080518160ab0152f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631cff79cd1461004a5780632e1a7d4d14610045578063658ce9d9146100455763b6b55f2514610045575f80fd5b61012a565b6040366003190112610126576004356001600160a01b0381168103610126576024359067ffffffffffffffff821161012657366023830112156101265781600401359167ffffffffffffffff831161012657366024848301011161012657307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146101175760209260409260246100eb930190610180565b815192839181835280519182918282860152018484015e5f828201840152601f01601f19168101030190f35b633954108560e21b5f5260045ffd5b5f80fd5b3461012657602036600319011261012657633954108560e21b5f5260045ffd5b90601f8019910116810190811067ffffffffffffffff82111761016c57604052565b634e487b7160e01b5f52604160045260245ffd5b90915f9281600411806101265781356001600160e01b03191663b6b55f2560e01b81146105585763658ce9d960e01b811461046957632e1a7d4d60e01b146101d1576311fa59f360e11b8552600485fd5b909192935061012657806004602092019283910103126101265735906101fe6101f982610937565b610997565b6040516370a0823160e01b81523060048201526001600160a01b0382169190602081602481865afa908115610360575f91610437575b5060405163182df0f560e01b8152602081600481875afa908115610360575f916103fd575b5061026d90670de0b6b3a764000092610984565b049183156103ee5760405163852a12e360e01b8152600481018590526020816024815f865af1908115610360575f916103bc575b5061036b576040518481528460208201527f91fb9d98b786c57d74c099ccd2beca1739e9f6a81fb49001ca465c4b7591bbe260403092a36001600160a01b036102e8610a21565b1691823b15610126576040516315041e8160e21b81526001600160a01b03929092166004830152602482018490526044820152905f908290606490829084905af1801561036057610350575b506040519060208201526020815261034d60408261014a565b90565b5f61035a9161014a565b5f610334565b6040513d5f823e3d90fd5b60405162461bcd60e51b815260206004820152602360248201527f41574b436f6d706f756e645632416461707465723a2072656465656d206661696044820152621b195960ea1b6064820152608490fd5b90506020813d6020116103e6575b816103d76020938361014a565b8101031261012657515f6102a1565b3d91506103ca565b631f2a200560e01b5f5260045ffd5b90506020813d60201161042f575b816104186020938361014a565b810103126101265751670de0b6b3a7640000610259565b3d915061040b565b90506020813d602011610461575b816104526020938361014a565b8101031261012657515f610234565b3d9150610445565b5090919294935061012657806004602092019283910103126101265735916001600160a01b0361049882610937565b168315801561054d575b61053a5792602060249394604051948580926370a0823160e01b82523060048301525afa928315610360575f93610504575b506104e5612710916104ec94610984565b0490610574565b6040519060208201526020815261034d60408261014a565b92506020833d602011610532575b8161051f6020938361014a565b81010312610126579151916104e56104d4565b3d9150610512565b8363aa31867360e01b5f5260045260245ffd5b5061271084116104a2565b5050602091935060048101938491010312610126576104ec9135905b91906105826101f984610937565b80156103ee57604051636f307dc360e01b8152926001600160a01b038116602085600481845afa948515610360575f956108e7575b506040516370a0823160e01b815230600482015294602086602481855afa958615610360575f966108b3575b5060018060a01b031660405163095ea7b360e01b5f52826004528460245260205f60448180865af19060015f51148216156108a4575b604052156107ef575b5060405163140e25ad60e31b8152600481018490526020816024815f865af1908115610360575f916107bd575b5061076e576040516370a0823160e01b815230600482015294602086602481855afa958615610360575f9661073a575b508503948511610726576040518381528560208201527ff5681f9d0db1b911ac18ee83d515a1cf1051853a9eae418316a2fdf7dea427c560403092a3836001600160a01b036106cc610a21565b16803b1561012657604051630d75082f60e11b81526001600160a01b0393909316600484015260248301939093526044820152905f908290606490829084905af180156103605761071a5750565b5f6107249161014a565b565b634e487b7160e01b5f52601160045260245ffd5b9095506020813d602011610766575b816107566020938361014a565b810103126101265751945f61067f565b3d9150610749565b60405162461bcd60e51b815260206004820152602160248201527f41574b436f6d706f756e645632416461707465723a206d696e74206661696c656044820152601960fa1b6064820152608490fd5b90506020813d6020116107e7575b816107d86020938361014a565b8101031261012657515f61064f565b3d91506107cb565b60405163095ea7b360e01b5f52826004525f60245260205f60448180865af19060015f511482161561088c575b604052156108595760405163095ea7b360e01b5f52826004528460245260205f60448180865af19060015f511482161561086b575b604052610622575b635274afe760e01b5f5260045260245ffd5b90600181151661088357823b15153d15161690610851565b503d5f823e3d90fd5b90600181151661088357823b15153d1516169061081c565b90823b15153d15161690610619565b9095506020813d6020116108df575b816108cf6020938361014a565b810103126101265751945f6105e3565b3d91506108c2565b61090a91955060203d602011610911575b610902818361014a565b810190610918565b935f6105b7565b503d6108f8565b9081602091031261012657516001600160a01b03811681036101265790565b604051636f307dc360e01b815290602090829060049082906001600160a01b03165afa908115610360575f9161096b575090565b61034d915060203d60201161091157610902818361014a565b8181029291811591840414171561072657565b60405163cdf456e160e01b8152602081600481305afa908115610360575f916109df575b506001600160a01b039081169116036109d057565b634847234360e01b5f5260045ffd5b90506020813d602011610a19575b816109fa6020938361014a565b8101031261012657516001600160a01b0381168103610126575f6109bb565b3d91506109ed565b604051633325e1df60e01b8152602081600481305afa908115610360575f91610a48575090565b90506020813d602011610a7f575b81610a636020938361014a565b8101031261012657516001600160a01b03811681036101265790565b3d9150610a5656fea26469706673582212208bc733b0c53da15737d0223756cec8cc0ea27958eba8e6a0029e108e68e0707564736f6c634300081c0033", + "nonce": "0x22", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x24741c019a3325872896aa557b3b226bb2f2780a6c89d9b7061d236d676ebe71", + "transactionType": "CALL", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "scheduleBatch(address[],uint256[],bytes[],bytes32,bytes32,uint256)", + "arguments": [ + "[0x9900f8019b20e822E2D5897db246a376A9514C8F, 0x9900f8019b20e822E2D5897db246a376A9514C8F, 0x9900f8019b20e822E2D5897db246a376A9514C8F, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA]", + "[0, 0, 0, 0, 0, 0, 0, 0, 0]", + "[0xc68e00fb00000000000000000000000014283f733d6f73ca116eaa07af7c8c16b1cef7e3, 0x5b34b8230000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca, 0x9277a1850000000000000000000000002e11edc25e5f2391cd9225a7c107d1b41ebacc9f, 0x22f2caf100000000000000000000000098474be8d188f450fef65b5c6d290d333eb74a2f, 0x22f2caf1000000000000000000000000063e92a335be85a7ae6d2de28397dcf40423c45f, 0x22f2caf1000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c466, 0x22f2caf1000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e, 0x22f2caf100000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a8, 0x22f2caf1000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e3]", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000000000000000000000000000000000000000003e8", + "0" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x24acc", + "value": "0x0", + "input": "0x8f2a0bb000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000090000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f0000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f0000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000002a00000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000036000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000004200000000000000000000000000000000000000000000000000000000000000024c68e00fb00000000000000000000000014283f733d6f73ca116eaa07af7c8c16b1cef7e30000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000245b34b8230000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000249277a1850000000000000000000000002e11edc25e5f2391cd9225a7c107d1b41ebacc9f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000098474be8d188f450fef65b5c6d290d333eb74a2f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000063e92a335be85a7ae6d2de28397dcf40423c45f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c46600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e300000000000000000000000000000000000000000000000000000000", + "nonce": "0x23", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xcd90c6463b6429688c1737a4c44bfcdc8dcc81cf8aaced36093cb399bdb084cb", + "transactionType": "CALL", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "executeBatch(address[],uint256[],bytes[],bytes32,bytes32)", + "arguments": [ + "[0x9900f8019b20e822E2D5897db246a376A9514C8F, 0x9900f8019b20e822E2D5897db246a376A9514C8F, 0x9900f8019b20e822E2D5897db246a376A9514C8F, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA]", + "[0, 0, 0, 0, 0, 0, 0, 0, 0]", + "[0xc68e00fb00000000000000000000000014283f733d6f73ca116eaa07af7c8c16b1cef7e3, 0x5b34b8230000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca, 0x9277a1850000000000000000000000002e11edc25e5f2391cd9225a7c107d1b41ebacc9f, 0x22f2caf100000000000000000000000098474be8d188f450fef65b5c6d290d333eb74a2f, 0x22f2caf1000000000000000000000000063e92a335be85a7ae6d2de28397dcf40423c45f, 0x22f2caf1000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c466, 0x22f2caf1000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e, 0x22f2caf100000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a8, 0x22f2caf1000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e3]", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000000000000000000000000000000000000000003e8" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x77930", + "value": "0x0", + "input": "0xe38335e500000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e800000000000000000000000000000000000000000000000000000000000000090000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f0000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f0000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000002a00000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000036000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000004200000000000000000000000000000000000000000000000000000000000000024c68e00fb00000000000000000000000014283f733d6f73ca116eaa07af7c8c16b1cef7e30000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000245b34b8230000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000249277a1850000000000000000000000002e11edc25e5f2391cd9225a7c107d1b41ebacc9f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000098474be8d188f450fef65b5c6d290d333eb74a2f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000063e92a335be85a7ae6d2de28397dcf40423c45f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c46600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e300000000000000000000000000000000000000000000000000000000", + "nonce": "0x24", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x1729c8b", + "logs": [ + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000773541f7c38be8106ae966ca9d6fee494a0edd24", + "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0x8c27f572246018455ff55f2f0ba8db816d9c5efafc2118908c9174ed41eb378a", + "transactionIndex": "0x3b", + "logIndex": "0x16b", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0xb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc1", + "0x000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", + "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0x8c27f572246018455ff55f2f0ba8db816d9c5efafc2118908c9174ed41eb378a", + "transactionIndex": "0x3b", + "logIndex": "0x16c", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0xfd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f783", + "0x000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", + "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0x8c27f572246018455ff55f2f0ba8db816d9c5efafc2118908c9174ed41eb378a", + "transactionIndex": "0x3b", + "logIndex": "0x16d", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0xd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e63", + "0x000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", + "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0x8c27f572246018455ff55f2f0ba8db816d9c5efafc2118908c9174ed41eb378a", + "transactionIndex": "0x3b", + "logIndex": "0x16e", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x11c24f4ead16507c69ac467fbd5e4eed5fb5c699626d2cc6d66421df253886d5" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0x8c27f572246018455ff55f2f0ba8db816d9c5efafc2118908c9174ed41eb378a", + "transactionIndex": "0x3b", + "logIndex": "0x16f", + "removed": false + } + ], + "logsBloom": "0x00000084000200000000000000000000020000000000000000000000000000000200000000000000000000000001000000000000000000000200004010200000000000000000000000800010000000000000000000000000000000000000000000000000020000000000000000000800000000000000000000020400000000000000000000000000000000000000000000000000001000080000000000000000000000000021800000000000000000000000000000000000001000000000000000000000000000004000000400000010000000000000000100000100200020000000000000000000000000000000000080000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x8c27f572246018455ff55f2f0ba8db816d9c5efafc2118908c9174ed41eb378a", + "transactionIndex": "0x3b", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0x14be7b", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0x7d1ed", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x4831b166f", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0xe675" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x1860213", + "logs": [ + { + "address": "0x9900f8019b20e822e2d5897db246a376a9514c8f", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000773541f7c38be8106ae966ca9d6fee494a0edd24", + "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xece501c1f307b9929175776c6911d75d94e3618de1c872bb2f6a8b4676754b4e", + "transactionIndex": "0x3c", + "logIndex": "0x170", + "removed": false + }, + { + "address": "0x9900f8019b20e822e2d5897db246a376a9514c8f", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x2fbb137a62ebd69bc6a41f4b4e96301da2105eef211fb1a3c75e8cfb9bfe7879", + "0x000000000000000000000000fbd0a3646bac17ee60860df7751129735b3f07a8", + "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xece501c1f307b9929175776c6911d75d94e3618de1c872bb2f6a8b4676754b4e", + "transactionIndex": "0x3c", + "logIndex": "0x171", + "removed": false + } + ], + "logsBloom": "0x00001004000002000000000000100000010000000000000000000000010000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000008000000800000000000000000000000000000000000000010000000000000000000000000000000000001000000000000000010000000000000001000000000000000000000000000000000000001000000000000000000000000000000000000400000010000000000000000100000000000020020000000000000000000000000000000080000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0xece501c1f307b9929175776c6911d75d94e3618de1c872bb2f6a8b4676754b4e", + "transactionIndex": "0x3c", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0x136588", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0x6b8ab", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "contractAddress": "0x9900f8019b20e822e2d5897db246a376a9514c8f", + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x3e0e6d4f3", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0xc619" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x1a8f16a", + "logs": [ + { + "address": "0x14283f733d6f73ca116eaa07af7c8c16b1cef7e3", + "topics": [ + "0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2" + ], + "data": "0x000000000000000000000000000000000000000000000000ffffffffffffffff", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0x0b9c670188616682af66fc5ac039e2f525d3d027e4ffba5e69449c38a023b49a", + "transactionIndex": "0x3d", + "logIndex": "0x172", + "removed": false + } + ], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000800000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x0b9c670188616682af66fc5ac039e2f525d3d027e4ffba5e69449c38a023b49a", + "transactionIndex": "0x3d", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0x22ef57", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0xbcb73", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "contractAddress": "0x14283f733d6f73ca116eaa07af7c8c16b1cef7e3", + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x6ce57a6de", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0x15b9f" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x1b5e0af", + "logs": [ + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000773541f7c38be8106ae966ca9d6fee494a0edd24", + "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0x30dbae9ea9e5131f93cbe3a867fc9bb6cf2a4235b48d4ea6e8de53e5303761c8", + "transactionIndex": "0x3e", + "logIndex": "0x173", + "removed": false + }, + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0xbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b26", + "0x000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", + "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0x30dbae9ea9e5131f93cbe3a867fc9bb6cf2a4235b48d4ea6e8de53e5303761c8", + "transactionIndex": "0x3e", + "logIndex": "0x174", + "removed": false + } + ], + "logsBloom": "0x00000004000200000000000000000000000000000000000000000000000000000200000000000000000000000040000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000010000000000000020000000000008000000800000000000000000000000000000000000000000000000000000000000000000000000004001000000000000000000000000000000001800000000000000000000000000000000000001000000000000000000000000000000000000400000010000000000000000100000000000020100000000000000000000000000000000080000000000000010000000000000000", + "type": "0x2", + "transactionHash": "0x30dbae9ea9e5131f93cbe3a867fc9bb6cf2a4235b48d4ea6e8de53e5303761c8", + "transactionIndex": "0x3e", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0xcef45", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0x4bcfe", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "contractAddress": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x2bbf041bb", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0x8ba5" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x1c4c307", + "logs": [ + { + "address": "0x2e11edc25e5f2391cd9225a7c107d1b41ebacc9f", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000773541f7c38be8106ae966ca9d6fee494a0edd24", + "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0x15609bceeca492c7f63ce7d6b141755d1449f86deffee156521720899df6a27d", + "transactionIndex": "0x3f", + "logIndex": "0x175", + "removed": false + } + ], + "logsBloom": "0x00000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000400000000000020000000000000020000000100000000000800000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000001000000000000000000000000000000000000001000000000000000000000000000000000000400000010000000000000000100000000000020000000000000000000000000000000000080000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x15609bceeca492c7f63ce7d6b141755d1449f86deffee156521720899df6a27d", + "transactionIndex": "0x3f", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0xee258", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0x51eba", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "contractAddress": "0x2e11edc25e5f2391cd9225a7c107d1b41ebacc9f", + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x2f4470f46", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0x96e3" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x1cd1223", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x7b00c930985dc5150eb462be54706b1b8c987d2fd1ab9168406f25e3d62cedce", + "transactionIndex": "0x40", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0x84f1c", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0x2edd7", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "contractAddress": "0x98474be8d188f450fef65b5c6d290d333eb74a2f", + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x1b0a7cbe6", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0x5652" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x1d7730e", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x0daabdfb07a8cd04d02c33141e1a96204f9fd4eb6cc254b736e46fe5155d46c7", + "transactionIndex": "0x41", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0xa60eb", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0x4034c", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "contractAddress": "0x063e92a335be85a7ae6d2de28397dcf40423c45f", + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x250c363cd", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0x7643" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x1e9b8d6", + "logs": [ + { + "address": "0x153e4801852249d1f7d05ccb13c1d1cf8ae7c466", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000773541f7c38be8106ae966ca9d6fee494a0edd24", + "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0x24741c019a3325872896aa557b3b226bb2f2780a6c89d9b7061d236d676ebe71", + "transactionIndex": "0x42", + "logIndex": "0x176", + "removed": false + }, + { + "address": "0x153e4801852249d1f7d05ccb13c1d1cf8ae7c466", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0xbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b26", + "0x000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", + "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0x24741c019a3325872896aa557b3b226bb2f2780a6c89d9b7061d236d676ebe71", + "transactionIndex": "0x42", + "logIndex": "0x177", + "removed": false + } + ], + "logsBloom": "0x00000004000200000000000000000000000000000000000000000000000000000200000100000000000000000040000000000000000000400000004000000000000000000000000000000000000000000000000000000000000000000010000000000000020000000000008000000800000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000001800000000000000000000000000000000000001000000000000000000000000000000000000400000010000000000000000100000000000020000000000000000000004000000000000080000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x24741c019a3325872896aa557b3b226bb2f2780a6c89d9b7061d236d676ebe71", + "transactionIndex": "0x42", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0x1245c8", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0x6d713", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "contractAddress": "0x153e4801852249d1f7d05ccb13c1d1cf8ae7c466", + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x3f2756135", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0xc999" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x1f3a85a", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0xce6126bfe544a722a46d69af2967864bb13ed35f7210f44c8541f1a0265dcb5e", + "transactionIndex": "0x43", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0x9ef84", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0x3843e", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "contractAddress": "0xc6b0eeff559a23187506440f8c62f58aea02fb4e", + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x207a74998", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0x67ad" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x1fdb8e6", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x8024f30e19b3a959805a95c7250ce1b4a96115ec7534a8b1fd06a5100cf1d4f1", + "transactionIndex": "0x44", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0xa108c", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0x37b8e", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "contractAddress": "0x65b65d4bf565b3ba92371ccd0b157da1bcb3b1a8", + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x202acb6d5", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0x66af" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x2079fd0", + "logs": [], + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x05b9cb5f0e27c04ef4da54621cf87927807adcd7e3e8c55829a1c611356751b9", + "transactionIndex": "0x45", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0x9e6ea", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0x37dba", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "contractAddress": "0x976cedebd26e4d78cbfdb789186510ab9a5747e3", + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x203b90ba0", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0x66e4" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x2760256", + "logs": [ + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024c68e00fb00000000000000000000000014283f733d6f73ca116eaa07af7c8c16b1cef7e300000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xcd90c6463b6429688c1737a4c44bfcdc8dcc81cf8aaced36093cb399bdb084cb", + "transactionIndex": "0x5f", + "logIndex": "0x1bc", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000001" + ], + "data": "0x0000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000245b34b8230000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca00000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xcd90c6463b6429688c1737a4c44bfcdc8dcc81cf8aaced36093cb399bdb084cb", + "transactionIndex": "0x5f", + "logIndex": "0x1bd", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000002" + ], + "data": "0x0000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000249277a1850000000000000000000000002e11edc25e5f2391cd9225a7c107d1b41ebacc9f00000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xcd90c6463b6429688c1737a4c44bfcdc8dcc81cf8aaced36093cb399bdb084cb", + "transactionIndex": "0x5f", + "logIndex": "0x1be", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000003" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000098474be8d188f450fef65b5c6d290d333eb74a2f00000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xcd90c6463b6429688c1737a4c44bfcdc8dcc81cf8aaced36093cb399bdb084cb", + "transactionIndex": "0x5f", + "logIndex": "0x1bf", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000004" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000063e92a335be85a7ae6d2de28397dcf40423c45f00000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xcd90c6463b6429688c1737a4c44bfcdc8dcc81cf8aaced36093cb399bdb084cb", + "transactionIndex": "0x5f", + "logIndex": "0x1c0", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000005" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c46600000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xcd90c6463b6429688c1737a4c44bfcdc8dcc81cf8aaced36093cb399bdb084cb", + "transactionIndex": "0x5f", + "logIndex": "0x1c1", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000006" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e00000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xcd90c6463b6429688c1737a4c44bfcdc8dcc81cf8aaced36093cb399bdb084cb", + "transactionIndex": "0x5f", + "logIndex": "0x1c2", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000007" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a800000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xcd90c6463b6429688c1737a4c44bfcdc8dcc81cf8aaced36093cb399bdb084cb", + "transactionIndex": "0x5f", + "logIndex": "0x1c3", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000008" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e300000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xcd90c6463b6429688c1737a4c44bfcdc8dcc81cf8aaced36093cb399bdb084cb", + "transactionIndex": "0x5f", + "logIndex": "0x1c4", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000003e8", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xcd90c6463b6429688c1737a4c44bfcdc8dcc81cf8aaced36093cb399bdb084cb", + "transactionIndex": "0x5f", + "logIndex": "0x1c5", + "removed": false + } + ], + "logsBloom": "0x04000080000000000000000040000000000000000000000000000000000000000000000000000000000000000000000100001000820480000000000000040000000030000000000000800000000000000000000000040008000000000000000008000000020000000000000000000800000080000000000000000400000000000080000400000000000000000000001000000800000000000000000000000100000000000000000000004100000004000000000000800000002000080000400040000000000000000000000000000000000000008000400000000100000060000000000000000000000000000000000000000000008000000000000000000000", + "type": "0x2", + "transactionHash": "0xcd90c6463b6429688c1737a4c44bfcdc8dcc81cf8aaced36093cb399bdb084cb", + "transactionIndex": "0x5f", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0x1a8d5", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0xe497", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x8417d1f0", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0x1a5a" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x27b1e80", + "logs": [ + { + "address": "0x9900f8019b20e822e2d5897db246a376a9514c8f", + "topics": [ + "0xab64f92ab780ecbf4f3866f57cee465ff36c89450dcce20237ca7a8d81fb7d13", + "0x00000000000000000000000014283f733d6f73ca116eaa07af7c8c16b1cef7e3" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1c6", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c68e00fb00000000000000000000000014283f733d6f73ca116eaa07af7c8c16b1cef7e300000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1c7", + "removed": false + }, + { + "address": "0x9900f8019b20e822e2d5897db246a376a9514c8f", + "topics": [ + "0x482b97c53e48ffa324a976e2738053e9aff6eee04d8aac63b10e19411d869b82", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1c8", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000001" + ], + "data": "0x0000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000245b34b8230000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca00000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1c9", + "removed": false + }, + { + "address": "0x9900f8019b20e822e2d5897db246a376a9514c8f", + "topics": [ + "0x5a69769904291a5b71c7f53981055587f0f849edb458cc47e64510be36d164d3", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000002e11edc25e5f2391cd9225a7c107d1b41ebacc9f" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1ca", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000002" + ], + "data": "0x0000000000000000000000009900f8019b20e822e2d5897db246a376a9514c8f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000249277a1850000000000000000000000002e11edc25e5f2391cd9225a7c107d1b41ebacc9f00000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1cb", + "removed": false + }, + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0xa77e7c594c11a0d5d9d8e6a9132ac0db912dc0f34f5fb7d94860fe38d16410bd", + "0x00000000000000000000000098474be8d188f450fef65b5c6d290d333eb74a2f" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1cc", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000003" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000098474be8d188f450fef65b5c6d290d333eb74a2f00000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1cd", + "removed": false + }, + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0xa77e7c594c11a0d5d9d8e6a9132ac0db912dc0f34f5fb7d94860fe38d16410bd", + "0x000000000000000000000000063e92a335be85a7ae6d2de28397dcf40423c45f" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1ce", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000004" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000063e92a335be85a7ae6d2de28397dcf40423c45f00000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1cf", + "removed": false + }, + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0xa77e7c594c11a0d5d9d8e6a9132ac0db912dc0f34f5fb7d94860fe38d16410bd", + "0x000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c466" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1d0", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000005" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c46600000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1d1", + "removed": false + }, + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0xa77e7c594c11a0d5d9d8e6a9132ac0db912dc0f34f5fb7d94860fe38d16410bd", + "0x000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1d2", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000006" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e00000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1d3", + "removed": false + }, + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0xa77e7c594c11a0d5d9d8e6a9132ac0db912dc0f34f5fb7d94860fe38d16410bd", + "0x00000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a8" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1d4", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000007" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a800000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1d5", + "removed": false + }, + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0xa77e7c594c11a0d5d9d8e6a9132ac0db912dc0f34f5fb7d94860fe38d16410bd", + "0x000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e3" + ], + "data": "0x", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1d6", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0xe311cc18826f37a5c07d4b2bdd7215bc4c479957d8630d1553cf44e61b115e05", + "0x0000000000000000000000000000000000000000000000000000000000000008" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e300000000000000000000000000000000000000000000000000000000", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "blockTimestamp": "0x698f8135", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "logIndex": "0x1d7", + "removed": false + } + ], + "logsBloom": "0x04000080001002008000000000000000000008000000000008000000100004000000100000000000800000000004004000001000020c800100000000000400804020300000000000008000000000000a0000000000040000000000000010002008400000020000000000008000000800001000200000000010000400000000000080000400000000000000000000001040080804000000000000000000210100000000000000200000004100000004000000008000800000202080080000400040000020000000280000002000000020000400008000000000400100000060100000008100000000800004010000000000000000008000010000000000000000", + "type": "0x2", + "transactionHash": "0xfbad78ec3e204d46a668a3a12f8b2aba509bfb86cf72a38c94820f59a9eb7d08", + "transactionIndex": "0x60", + "blockHash": "0xc2cc2215ad7b2d017a56179ff7a2056f305f9fae3e71753fb064df62e4a7946a", + "blockNumber": "0x2829229", + "gasUsed": "0x51c2a", + "effectiveGasPrice": "0x533991", + "blobGasUsed": "0xe1e0", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2e7418", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x828552c1", + "l1GasPrice": "0x35a0dd7", + "l1GasUsed": "0x1a0a" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1771012596204, + "chain": 8453, + "commit": "feef4c5" +} \ No newline at end of file diff --git a/broadcast/Deploy.s.sol/8453/run-latest.json b/broadcast/Deploy.s.sol/8453/run-latest.json index 5db0d6e..05bb524 100644 --- a/broadcast/Deploy.s.sol/8453/run-latest.json +++ b/broadcast/Deploy.s.sol/8453/run-latest.json @@ -1,959 +1,159 @@ { "transactions": [ { - "hash": "0xba4b51caf4af8220fa2436d1a39e97c40710037ecbb540366213ce3531bec0d9", + "hash": "0xf1af1f1e395a35dd2149b0685d5a57c8b6c3dd33afcd7a26f7a76f045b9dd6d0", "transactionType": "CREATE2", - "contractName": "YieldSeekerAdminTimelock", - "contractAddress": "0x60163d6406503426e712ed6c507137229552756d", + "contractName": "YieldSeekerSwapSellPolicy", + "contractAddress": "0x2c61dc81bc40389ff11ce68e78e93a3f75e41b9c", "function": null, "arguments": [ - "0", - "[0xF8CBf6437d2473eC59885299Af38D9A13cE97ecA]", - "[0xF8CBf6437d2473eC59885299Af38D9A13cE97ecA]", - "0x0000000000000000000000000000000000000000" + "0x773541F7c38BE8106AE966CA9D6fee494a0eDD24", + "0xF8CBf6437d2473eC59885299Af38D9A13cE97ecA", + "false" ], "transaction": { "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0x1ca729", + "gas": "0xec6d6", "value": "0x0", - "input": "0x000000000000000000000000000000000000000000000000000000000000000660806040523461016657611a61803803806100198161016a565b92833981019060808183031261016657805160208201519091906001600160401b038111610166578361004d9183016101b7565b604082015190936001600160401b0382116101665761007360609161007a9385016101b7565b92016101a3565b61008330610249565b506001600160a01b038116610156575b505f5b83518110156100e0576001906100be6001600160a01b036100b78388610221565b51166102bf565b506100d9828060a01b036100d28388610221565b5116610352565b5001610096565b50905f5b82518110156101135760019061010c6001600160a01b036101058387610221565b51166103e5565b50016100e4565b7f11c24f4ead16507c69ac467fbd5e4eed5fb5c699626d2cc6d66421df253886d5604083806002558151905f82526020820152a160405161154890816104798239f35b61015f90610249565b505f610093565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761018f57604052565b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b038216820361016657565b9080601f83011215610166578151916001600160401b03831161018f578260051b906020806101e781850161016a565b80968152019282010192831161016657602001905b8282106102095750505090565b60208091610216846101a3565b8152019101906101fc565b80518210156102355760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b6001600160a01b0381165f9081525f516020611a415f395f51905f52602052604090205460ff166102ba576001600160a01b03165f8181525f516020611a415f395f51905f5260205260408120805460ff191660011790553391905f5160206119c15f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f5160206119e15f395f51905f52602052604090205460ff166102ba576001600160a01b03165f8181525f5160206119e15f395f51905f5260205260408120805460ff191660011790553391907fb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc1905f5160206119c15f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611a215f395f51905f52602052604090205460ff166102ba576001600160a01b03165f8181525f516020611a215f395f51905f5260205260408120805460ff191660011790553391907ffd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f783905f5160206119c15f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611a015f395f51905f52602052604090205460ff166102ba576001600160a01b03165f8181525f516020611a015f395f51905f5260205260408120805460ff191660011790553391907fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e63905f5160206119c15f395f51905f529080a460019056fe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806301d5062a14610b2057806301ffc9a714610ab057806307bd026514610a76578063134008d3146109c357806313bc9f20146109a5578063150b7a0214610950578063248a9ca3146109265780632ab0f529146109085780632f2ff15d146108cb57806331d50750146108ad57806336568abe14610869578063584b153e1461084157806364d62353146107dc5780637958004c146107995780638065657f1461077a5780638f2a0bb0146105f55780638f61f4f5146105bb57806391d1485414610573578063a217fddf14610559578063b08e51c01461051f578063b1c5f427146104f5578063bc197c8114610460578063c4d252f514610382578063d45c443514610358578063d547741f14610314578063e38335e5146101c8578063f23a6e61146101735763f27a0c920361000e573461016f575f36600319011261016f576020600254604051908152f35b5f80fd5b3461016f5760a036600319011261016f5761018c610bcb565b50610195610be1565b506084356001600160401b03811161016f576101b5903690600401610cc2565b5060405163f23a6e6160e01b8152602090f35b6101d136610d38565b5f80527fdae2aa361dfd1ca020a396615627d436107c35eff9fe7738a3512819782d70696020527f5ba6852781629bcdcd4bdaa6de76d786f1c64b16acdac474e55bebc0ea1579515492979196919593949260ff1615610306575b8282148015906102fc575b6102e15761024e61025591888a888789888d611002565b968761131b565b5f5b81811061026757610018876113c6565b8080887fc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b5888886102d86102bf8f986001998f828e6102b28f836102ad916102b896610f89565b610fad565b97610f89565b3595610fc1565b906102cc82828787611373565b60405194859485610e65565b0390a301610257565b50869063ffb0321160e01b5f5260045260245260445260645ffd5b5087821415610237565b61030f3361124d565b61022c565b3461016f57604036600319011261016f57610018600435610333610be1565b9061035361034c825f525f602052600160405f20015490565b33906112d3565b61146c565b3461016f57602036600319011261016f576004355f526001602052602060405f2054604051908152f35b3461016f57602036600319011261016f57335f9081527fc3ad33e20b0c56a223ad5104fff154aa010f8715b9c981fd38fdc60a4d1a52fb60205260409020546004359060ff1615610429576103d681610ed3565b1561040f57805f5260016020525f60408120557fbaa1eb22f2a492ba1a5fea61b8df4d27c6c8b5f3971e63bb58fa14ff72eedb705f80a2005b635ead8eb560e01b5f52600452600460021760245260445ffd5b63e2517d3f60e01b5f52336004527ffd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f78360245260445ffd5b3461016f5760a036600319011261016f57610479610bcb565b50610482610be1565b506044356001600160401b03811161016f576104a2903690600401610da6565b506064356001600160401b03811161016f576104c2903690600401610da6565b506084356001600160401b03811161016f576104e2903690600401610cc2565b5060405163bc197c8160e01b8152602090f35b3461016f57602061051761050836610d38565b96959095949194939293611002565b604051908152f35b3461016f575f36600319011261016f5760206040517ffd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f7838152f35b3461016f575f36600319011261016f5760206040515f8152f35b3461016f57604036600319011261016f5761058c610be1565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461016f575f36600319011261016f5760206040517fb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc18152f35b3461016f5760c036600319011261016f576004356001600160401b03811161016f57610625903690600401610d08565b906024356001600160401b03811161016f57610645903690600401610d08565b6044929192356001600160401b03811161016f57610667903690600401610d08565b9390916064356084359560a4359261067e336111c7565b808914801590610770575b6107565761069d88848489858a8f8e611002565b986106a8858b611154565b895f5b8281106106e8575089806106bb57005b60207f20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d038791604051908152a2005b806001927f4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca8b8b61074b8f8c61073e8f928e6107378f8f906107316102ad8f8097948195610f89565b99610f89565b3597610fc1565b9060405196879687610e2d565b0390a3018a906106ab565b908863ffb0321160e01b5f5260045260245260445260645ffd5b5081891415610689565b3461016f57602061051761078d36610c24565b94939093929192610f34565b3461016f57602036600319011261016f576107b5600435610efc565b60405160048210156107c8576020918152f35b634e487b7160e01b5f52602160045260245ffd5b3461016f57602036600319011261016f5760043530330361082e577f11c24f4ead16507c69ac467fbd5e4eed5fb5c699626d2cc6d66421df253886d560406002548151908152836020820152a1600255005b63e2850c5960e01b5f523360045260245ffd5b3461016f57602036600319011261016f57602061085f600435610ed3565b6040519015158152f35b3461016f57604036600319011261016f57610882610be1565b336001600160a01b0382160361089e576100189060043561146c565b63334bd91960e11b5f5260045ffd5b3461016f57602036600319011261016f57602061085f600435610ebc565b3461016f57604036600319011261016f576100186004356108ea610be1565b9061090361034c825f525f602052600160405f20015490565b6113e4565b3461016f57602036600319011261016f57602061085f600435610ea4565b3461016f57602036600319011261016f5760206105176004355f525f602052600160405f20015490565b3461016f57608036600319011261016f57610969610bcb565b50610972610be1565b506064356001600160401b03811161016f57610992903690600401610cc2565b50604051630a85bd0160e11b8152602090f35b3461016f57602036600319011261016f57602061085f600435610e8c565b610018610a545f610a607fc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58610a4b6109fa36610c24565b7fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e638a9995979299949394528960205260408a208a805260205260ff60408b20541615610a68575b8884848989610f34565b9889978861131b565b6102cc82828787611373565b0390a36113c6565b610a713361124d565b610a41565b3461016f575f36600319011261016f5760206040517fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e638152f35b3461016f57602036600319011261016f5760043563ffffffff60e01b811680910361016f57602090630271189760e51b8114908115610af5575b506040519015158152f35b637965db0b60e01b811491508115610b0f575b5082610aea565b6301ffc9a760e01b14905082610b08565b3461016f5760c036600319011261016f57610b39610bcb565b602435906044356001600160401b03811161016f577f4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca92610b7f5f923690600401610bf7565b94909160643594610bc16084359660a43590610b9a336111c7565b610ba889828c8a8989610f34565b998a97610bb5848a611154565b60405196879687610e2d565b0390a3806106bb57005b600435906001600160a01b038216820361016f57565b602435906001600160a01b038216820361016f57565b9181601f8401121561016f578235916001600160401b03831161016f576020838186019501011161016f57565b60a060031982011261016f576004356001600160a01b038116810361016f579160243591604435906001600160401b03821161016f57610c6691600401610bf7565b90916064359060843590565b90601f801991011681019081106001600160401b03821117610c9357604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b038111610c9357601f01601f191660200190565b81601f8201121561016f57803590610cd982610ca7565b92610ce76040519485610c72565b8284526020838301011161016f57815f926020809301838601378301015290565b9181601f8401121561016f578235916001600160401b03831161016f576020808501948460051b01011161016f57565b60a060031982011261016f576004356001600160401b03811161016f5781610d6291600401610d08565b929092916024356001600160401b03811161016f5781610d8491600401610d08565b92909291604435906001600160401b03821161016f57610c6691600401610d08565b9080601f8301121561016f578135916001600160401b038311610c93578260051b9060405193610dd96020840186610c72565b845260208085019282010192831161016f57602001905b828210610dfd5750505090565b8135815260209182019101610df0565b908060209392818452848401375f828201840152601f01601f1916010190565b929093610e5b926080959897969860018060a01b03168552602085015260a0604085015260a0840191610e0d565b9460608201520152565b610e89949260609260018060a01b0316825260208201528160408201520191610e0d565b90565b610e9590610efc565b60048110156107c85760021490565b610ead90610efc565b60048110156107c85760031490565b610ec590610efc565b60048110156107c857151590565b610edc90610efc565b60048110156107c85760018114908115610ef4575090565b600291501490565b5f52600160205260405f205480155f14610f1557505f90565b60018103610f235750600390565b421015610f2f57600190565b600290565b94610f6a610f8394959293604051968795602087019960018060a01b03168a52604087015260a0606087015260c0860191610e0d565b91608084015260a083015203601f198101835282610c72565b51902090565b9190811015610f995760051b0190565b634e487b7160e01b5f52603260045260245ffd5b356001600160a01b038116810361016f5790565b9190811015610f995760051b81013590601e198136030182121561016f5701908135916001600160401b03831161016f57602001823603811361016f579190565b9693949190969592956040519660208801988060c08a0160a08c525260e0890192905f905b80821061111e57505050878203601f190160408901528082526001600160fb1b03811161016f579087959394929160051b8092602083013701848103606086015260208101849052600584901b8101604090810194908201915f90889036829003601e1901905b8484106110b857505050505050610f839450608084015260a083015203601f198101835282610c72565b91939597909294969850601f19601f198383030101875289358381121561016f57840190602082359201916001600160401b03811161016f57803603831361016f5761110a6020928392600195610e0d565b9b0197019401918a9896999795939161108e565b91939091908435906001600160a01b038216820361016f576001600160a01b039091168152602090810194019160010190611027565b9061115e82610ebc565b6111af576002548082106111995750420190814211611185575f52600160205260405f2055565b634e487b7160e01b5f52601160045260245ffd5b90635433660960e01b5f5260045260245260445ffd5b50635ead8eb560e01b5f52600452600160245260445ffd5b6001600160a01b0381165f9081527f3412d5605ac6cd444957cedb533e5dacad6378b4bc819ebe3652188a665066d5602052604090205460ff16156112095750565b63e2517d3f60e01b5f9081526001600160a01b03919091166004527fb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc1602452604490fd5b6001600160a01b0381165f9081527fdae2aa361dfd1ca020a396615627d436107c35eff9fe7738a3512819782d7069602052604090205460ff161561128f5750565b63e2517d3f60e01b5f9081526001600160a01b03919091166004527fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e63602452604490fd5b90815f525f60205260405f2060018060a01b0382165f5260205260ff60405f205416156112fe575050565b63e2517d3f60e01b5f5260018060a01b031660045260245260445ffd5b61132481610e8c565b1561135c57508015158061134c575b61133a5750565b63121534c360e31b5f5260045260245ffd5b5061135681610ea4565b15611333565b635ead8eb560e01b5f52600452600460245260445ffd5b6113bb935f93928493826040519384928337810185815203925af13d156113be573d9061139f82610ca7565b916113ad6040519384610c72565b82523d5f602084013e6114ec565b50565b6060906114ec565b6113cf81610e8c565b1561135c575f526001602052600160405f2055565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611466575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611466575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b156114f45790565b80511561150357602081519101fd5b63d6bda27560e01b5f5260045ffdfea2646970667358221220bccbe2acf19888c895f0cd25e3089a4a6308b9dcf43dcd456ddffa669ab14d6d64736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3412d5605ac6cd444957cedb533e5dacad6378b4bc819ebe3652188a665066d5dae2aa361dfd1ca020a396615627d436107c35eff9fe7738a3512819782d7069c3ad33e20b0c56a223ad5104fff154aa010f8715b9c981fd38fdc60a4d1a52fbad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb50000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", - "nonce": "0x0", + "input": "0x00000000000000000000000000000000000000000000000000000000000000076080346100c057601f610ce738819003918201601f19168301916001600160401b038311848410176100c4578084926060946040528339810103126100c057610047816100d8565b6040610055602084016100d8565b920151918215158093036100c0576001600160a01b038216156100b1576001600160a01b038116156100b15761008d610093926100ec565b50610162565b5060ff801960015416911617600155604051610a9190816101f68239f35b63d92e233d60e01b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036100c057565b6001600160a01b0381165f9081525f516020610cc75f395f51905f52602052604090205460ff1661015d576001600160a01b03165f8181525f516020610cc75f395f51905f5260205260408120805460ff191660011790553391905f516020610c875f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f516020610ca75f395f51905f52602052604090205460ff1661015d576001600160a01b03165f8181525f516020610ca75f395f51905f5260205260408120805460ff191660011790553391907fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b26905f516020610c875f395f51905f529080a460019056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a7146106bd5750806320df435914610683578063248a9ca3146106515780632f2ff15d1461061457806336568abe146105d05780635e5617711461050c57806366b3c530146104a15780637464df1d1461047f578063846a77031461042a57806391d14854146103e257806399b39dc1146102ec578063a217fddf146102d2578063b5924e0b14610270578063b5b2f1ef14610188578063d547741f146101445763e36e2e37146100cc575f80fd5b34610140576020366003190112610140576100e5610726565b6100ed610774565b6001600160a01b031680156101315761010581610a01565b61010b57005b7f4ac723403fd9e3f5fbe7116bb75c15981bd5cb9ca32255900e5c29d9597cbee25f80a2005b63d92e233d60e01b5f5260045ffd5b5f80fd5b3461014057604036600319011261014057610186600435610163610710565b9061018161017c825f525f602052600160405f20015490565b6107c3565b610883565b005b34610140575f366003190112610140576040518060206002549182815201809160025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace905f5b81811061025a57505050829003601f01601f191682019167ffffffffffffffff8311818410176102465790829182604052602083019060208452518091526040830191905f5b818110610224575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610216565b634e487b7160e01b5f52604160045260245ffd5b82548452602090930192600192830192016101d0565b34610140576020366003190112610140576004358015158091036101405760207f74c88bdf6980e6d2f0199be2ccaacfb3770508c3d4ce8a831fe820e7f7b4f404916102ba610774565b60ff196001541660ff821617600155604051908152a1005b34610140575f3660031901126101405760206040515f8152f35b346101405760203660031901126101405760043567ffffffffffffffff811161014057366023820112156101405780600401359067ffffffffffffffff8211610140576024810190602436918460051b0101116101405761034b610774565b5f5b82811061035657005b6001600160a01b0361037161036c83868661073c565b610760565b1615610131576001906103996001600160a01b0361039361036c84888861073c565b16610a01565b6103a4575b0161034d565b818060a01b036103b861036c83878761073c565b167f4ac723403fd9e3f5fbe7116bb75c15981bd5cb9ca32255900e5c29d9597cbee25f80a261039e565b34610140576040366003190112610140576103fb610710565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b34610140576020366003190112610140576020610445610726565b60ff6001541690811561045e575b506040519015158152f35b6001600160a01b03165f908152600360205260409020541515905082610453565b34610140575f36600319011261014057602060ff600154166040519015158152f35b34610140576020366003190112610140576104ba610726565b60ff6001541615806104ed575b6104cd57005b631a7852a960e31b5f9081526001600160a01b0391909116600452602490fd5b506001600160a01b0381165f90815260036020526040902054156104c7565b3461014057602036600319011261014057610525610726565b335f9081527f3c1b1854ab1360abbb06c8d4c6b2672d4b8cedc5eff522ab19e51d5cb8fdbd46602052604090205460ff1615610599576001600160a01b031661056d81610918565b61057357005b7f3b00e462401f0dd38135e28206d1d0ad5dc97314acd8f937e1b9cb6b50a5869f5f80a2005b63e2517d3f60e01b5f52336004527fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b2660245260445ffd5b34610140576040366003190112610140576105e9610710565b336001600160a01b038216036106055761018690600435610883565b63334bd91960e11b5f5260045ffd5b3461014057604036600319011261014057610186600435610633610710565b9061064c61017c825f525f602052600160405f20015490565b6107fb565b3461014057602036600319011261014057602061067b6004355f525f602052600160405f20015490565b604051908152f35b34610140575f3660031901126101405760206040517fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b268152f35b34610140576020366003190112610140576004359063ffffffff60e01b821680920361014057602091637965db0b60e01b81149081156106ff575b5015158152f35b6301ffc9a760e01b149050836106f8565b602435906001600160a01b038216820361014057565b600435906001600160a01b038216820361014057565b919081101561074c5760051b0190565b634e487b7160e01b5f52603260045260245ffd5b356001600160a01b03811681036101405790565b335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff16156107ac57565b63e2517d3f60e01b5f52336004525f60245260445ffd5b5f8181526020818152604080832033845290915290205460ff16156107e55750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f818152602081815260408083206001600160a01b038616845290915290205460ff1661087d575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff161561087d575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b805482101561074c575f5260205f2001905f90565b5f81815260036020526040902054801561087d575f1981018181116109ed576002545f198101919082116109ed5781810361099f575b505050600254801561098b575f1901610968816002610903565b8154905f199060031b1b191690556002555f5260036020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6109d76109b06109c1936002610903565b90549060031b1c9283926002610903565b819391549060031b91821b915f19901b19161790565b90555f52600360205260405f20555f808061094e565b634e487b7160e01b5f52601160045260245ffd5b805f52600360205260405f2054155f14610a56576002546801000000000000000081101561024657610a3f6109c18260018594016002556002610903565b9055600254905f52600360205260405f2055600190565b505f9056fea2646970667358221220705c96288bd44725627e2512883b2143ea3bb15fe9f3ce27ec7db94567029cc364736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c1b1854ab1360abbb06c8d4c6b2672d4b8cedc5eff522ab19e51d5cb8fdbd46ad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5000000000000000000000000773541f7c38be8106ae966ca9d6fee494a0edd24000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca0000000000000000000000000000000000000000000000000000000000000000", + "nonce": "0x2f", "chainId": "0x2105" }, "additionalContracts": [], "isFixedGasLimit": false }, { - "hash": "0x7556e7e15ddb03c8761b98a889bdec5734f9e20151b58ee7335f7fd8fe4bb305", + "hash": "0x64e6193e33c9be328a25ed28f2fe5333b9ea9f8d4da707bc5554adb3db43a7e7", "transactionType": "CREATE2", - "contractName": "YieldSeekerAgentWalletFactory", - "contractAddress": "0x23aafaeb5b78816dbcf20d503a73cd9750a21d63", + "contractName": "YieldSeekerUniswapV3SwapAdapter", + "contractAddress": "0xdbcdba358a804dc388f33ffbd7fa664cf689cabd", "function": null, "arguments": [ - "0x60163d6406503426E712eD6c507137229552756D", - "0xFBD0A3646Bac17eE60860df7751129735b3F07A8" + "0x2626664c2603336E57B271c5C0b26F421741e481", + "0x2c61dC81bc40389FF11CE68e78E93a3F75e41b9c" ], "transaction": { "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0x1acaa3", + "gas": "0x142404", "value": "0x0", - "input": "0x00000000000000000000000000000000000000000000000000000000000000066080346100a157601f61159a38819003918201601f19168301916001600160401b038311848410176100a55780849260409485528339810103126100a157610052602061004b836100b9565b92016100b9565b6001600160a01b03821615610092576001600160a01b038116156100925761007c610082926100cd565b50610120565b5060405161126990816102f18239f35b63d92e233d60e01b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036100a157565b6100d7815f6101f8565b90816100e1575090565b5f8052600160205261011c906001600160a01b03167fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49610280565b5090565b5f51602061155a5f395f51905f525f5260016020525f51602061157a5f395f51905f5254600a1115806101b7575b6101a857610169815f51602061155a5f395f51905f526101f8565b9081610173575090565b5f51602061155a5f395f51905f525f52600160205261011c906001600160a01b03165f51602061157a5f395f51905f52610280565b636055dca160e01b5f5260045ffd5b506001600160a01b0381165f9081527fe8424ec1ecf42e9e88998e7da204f6091f75a50979eee18faf18b49b474940b0602052604090205460ff161561014e565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1661027a575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b6001810190825f528160205260405f2054155f146102e9578054680100000000000000008110156100a557600181018083558110156102d5578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe6080806040526004361015610012575f80fd5b5f905f3560e01c9081630155e09814610b845750806301ffc9a714610b14578063244c9c29146109fb578063248a9ca3146109c95780632b78c9f7146109ae5780632f2ff15d146108d95780633325e1df146108b157806336568abe1461086b57806350b5c16a14610843578063583f2f09146105c65780635b34b8231461054657806368fe596f1461051d5780638cb84e18146104795780639010d07c1461043357806391d14854146103ea5780639277a1851461036a578063a1dcf28214610342578063a217fddf14610326578063a3246ad3146102b2578063c68e00fb14610183578063ca15c873146101595763d547741f14610110575f80fd5b346101565760403660031901126101565761015260043561012f610be3565b9061014d610148825f525f602052600160405f20015490565b610cc4565b610cfc565b5080f35b80fd5b50346101565760203660031901126101565760406020916004358152600183522054604051908152f35b5034610156576020366003190112610156576004356001600160a01b038116908190036102ae576101b2610c75565b801561029f57803b1561028d576040516202dd3160ec1b8152602081600481855afa90811561028257839161023c575b50306001600160a01b039091160361022d57600280546001600160a01b031916821790557fab64f92ab780ecbf4f3866f57cee465ff36c89450dcce20237ca7a8d81fb7d138280a280f35b63502eeedf60e01b8252600482fd5b90506020813d60201161027a575b8161025760209383610c3b565b8101031261027657516001600160a01b0381168103610276575f6101e2565b8280fd5b3d915061024a565b6040513d85823e3d90fd5b6322a2d07b60e21b8252600452602490fd5b63d92e233d60e01b8252600482fd5b5080fd5b5034610156576020366003190112610156576004358152600160205260408120604051918260208354918281520192825260208220915b8181106103105761030c8561030081870382610c3b565b60405191829182610bf9565b0390f35b82548452602090930192600192830192016102e9565b5034610156578060031936011261015657602090604051908152f35b503461015657806003193601126101565760206040515f5160206112145f395f51905f528152f35b5034610156576020366003190112610156576004356001600160a01b038116908190036102ae57610399610c75565b801561029f57803b1561028d57600580546001600160a01b0319811683179091556001600160a01b03167f5a69769904291a5b71c7f53981055587f0f849edb458cc47e64510be36d164d38380a380f35b5034610156576040366003190112610156576040610406610be3565b91600435815280602052209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b50346101565760403660031901126101565761046060406020926004358152600184522060243590610dbc565b905460405160039290921b1c6001600160a01b03168152f35b5034610156576040366003190112610156576020600b610497610bcd565b604080516001600160a01b03909216848301908152602435602082015291906104cd90829084015b03601f198101835282610c3b565b5190206102786040516104e285830182610c3b565b81815284810191610f9c833951902090604051916040830152838201523081520160ff8153605590206040516001600160a01b039091168152f35b50346101565780600319360112610156576002546040516001600160a01b039091168152602090f35b5034610156576020366003190112610156576004356001600160a01b038116908190036102ae57610575610c75565b801561029f57803b1561028d57600380546001600160a01b0319811683179091556001600160a01b03167f482b97c53e48ffa324a976e2738053e9aff6eee04d8aac63b10e19411d869b828380a380f35b346107b05760603660031901126107b0576105df610bcd565b6044356001600160a01b0381169190602435908381036107b057335f9081527fe8424ec1ecf42e9e88998e7da204f6091f75a50979eee18faf18b49b474940b0602052604090205460ff161561081f5783156107fd573b1561080c576001600160a01b0382169182156107fd576002546001600160a01b0316156107ee576003546001600160a01b0316156107df57825f52600460205260405f20825f5260205260018060a01b0360405f2054166107c857604080516001600160a01b0390921660208301908152908201839052906106bb81606081016104bf565b51902060405161027880820182811067ffffffffffffffff8211176107b4578291610f9c833903905ff580156107a55760018060a01b031691805f52600460205260405f20825f5260205260405f20836bffffffffffffffffffffffff60a01b825416179055823b156107b0576040519363c350a1b560e01b85528160048601528260248601528060448601525f8560648183885af19485156107a557602085927f24924211b2afa1a1fa2d9d9361ccc452c0df4f982d439cdcc311140e55b3f56d928298610795575b50604051908152a4604051908152f35b5f61079f91610c3b565b5f610785565b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b5090633de717e160e21b5f5260045260245260445ffd5b6303b099cf60e61b5f5260045ffd5b638f51a26d60e01b5f5260045ffd5b63d92e233d60e01b5f5260045ffd5b826322a2d07b60e21b5f5260045260245ffd5b63e2517d3f60e01b5f52336004525f5160206112145f395f51905f5260245260445ffd5b346107b0575f3660031901126107b0576003546040516001600160a01b039091168152602090f35b346107b05760403660031901126107b057610884610be3565b336001600160a01b038216036108a2576108a090600435610cfc565b005b63334bd91960e11b5f5260045ffd5b346107b0575f3660031901126107b0576005546040516001600160a01b039091168152602090f35b346107b05760403660031901126107b0576004356108f5610be3565b61090d610148835f525f602052600160405f20015490565b5f5160206112145f395f51905f52821480610997575b8061096d575b61095e576109378183610dd1565b61093d57005b5f918252600160205260409091206108a0916001600160a01b031690610f42565b636055dca160e01b5f5260045ffd5b505f828152602081815260408083206001600160a01b038516845290915290205460ff1615610929565b50815f526001602052600a60405f20541015610923565b346107b0575f3660031901126107b0576020604051600a8152f35b346107b05760203660031901126107b05760206109f36004355f525f602052600160405f20015490565b604051908152f35b346107b0575f3660031901126107b0575f5160206112145f395f51905f525f5260016020527f2737f4fbde60fa8ca451e7409d70a576ffb90aaa6a453ecd5bd224428e00910354610a4b81610c5d565b90610a596040519283610c3b565b808252601f19610a6882610c5d565b013660208401375f5b818110610a86576040518061030c8582610bf9565b5f5160206112145f395f51905f525f526001602052610ac5817f2737f4fbde60fa8ca451e7409d70a576ffb90aaa6a453ecd5bd224428e009103610dbc565b9054845160039290921b1c6001600160a01b03169190811015610b00576001600160a01b03909116600582901b840160200152600101610a71565b634e487b7160e01b5f52603260045260245ffd5b346107b05760203660031901126107b05760043563ffffffff60e01b81168091036107b057602090635a05180f60e01b8114908115610b59575b506040519015158152f35b637965db0b60e01b811491508115610b73575b5082610b4e565b6301ffc9a760e01b14905082610b6c565b346107b05760403660031901126107b0576020906001600160a01b03610ba8610bcd565b165f908152600483526040808220602435835284529020546001600160a01b03168152f35b600435906001600160a01b03821682036107b057565b602435906001600160a01b03821682036107b057565b60206040818301928281528451809452019201905f5b818110610c1c5750505090565b82516001600160a01b0316845260209384019390920191600101610c0f565b90601f8019910116810190811067ffffffffffffffff8211176107b457604052565b67ffffffffffffffff81116107b45760051b60200190565b335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff1615610cad57565b63e2517d3f60e01b5f52336004525f60245260445ffd5b5f8181526020818152604080832033845290915290205460ff1615610ce65750565b63e2517d3f60e01b5f523360045260245260445ffd5b610d068282610d36565b9182610d1157505090565b5f91825260016020526040909120610d32916001600160a01b031690610e53565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615610db6575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b50505f90565b8054821015610b00575f5260205f2001905f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16610db6575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b906001820191815f528260205260405f20548015155f14610f3a575f198101818111610f265782545f19810191908211610f2657818103610edb575b50505080548015610ec7575f190190610ea88282610dbc565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b610f11610eeb610efb9386610dbc565b90549060031b1c92839286610dbc565b819391549060031b91821b915f19901b19161790565b90555f528360205260405f20555f8080610e8f565b634e487b7160e01b5f52601160045260245ffd5b505050505f90565b6001810190825f528160205260405f2054155f14610f94578054680100000000000000008110156107b457610f81610efb826001879401855584610dbc565b905554915f5260205260405f2055600190565b5050505f9056fe60808060405234610153576368fe596f60e01b8152602081600481335afa90811561015e575f91610103575b506040516001600160a01b039190911690602081016001600160401b038111828210176100ef576040525f8152813b156100dc577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b03191683179055817fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a28051156100d5576100c591610169565b505b604051608290816101f68239f35b50506100c7565b50634c9c8ce360e01b5f5260045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b905060203d602011610157575b601f8101601f191682016001600160401b038111838210176100ef5760209183916040528101031261015357516001600160a01b0381168103610153575f61002b565b5f80fd5b503d610110565b6040513d5f823e3d90fd5b905f8091602081519101845af480806101e2575b1561019d5750506040513d81523d5f602083013e60203d82010160405290565b156101c257639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b3d156101d3576040513d5f823e3d90fd5b63d6bda27560e01b5f5260045ffd5b503d15158061017d5750813b151561017d56fe60806040527f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc545f9081906001600160a01b0316368280378136915af43d5f803e156048573d5ff35b3d5ffdfea2646970667358221220fdeb4d01f0733239c7596f1bca83971f66ed2dbb15b3f42f4470564f93033cd864736f6c634300081c00332fbb137a62ebd69bc6a41f4b4e96301da2105eef211fb1a3c75e8cfb9bfe7879a2646970667358221220345b2be893f9463efee948dd689b755345b242140a526bae65fb5859de82be1764736f6c634300081c00332fbb137a62ebd69bc6a41f4b4e96301da2105eef211fb1a3c75e8cfb9bfe78792737f4fbde60fa8ca451e7409d70a576ffb90aaa6a453ecd5bd224428e00910300000000000000000000000060163d6406503426e712ed6c507137229552756d000000000000000000000000fbd0a3646bac17ee60860df7751129735b3f07a8", - "nonce": "0x1", + "input": "0x000000000000000000000000000000000000000000000000000000000000000760e0346100ea57601f61115738819003918201601f19168301916001600160401b038311848410176100ee5780849260409485528339810103126100ea57610052602061004b83610102565b9201610102565b30608052906001600160a01b038116156100db5760a0526001600160a01b038116156100db5760c0526040516110409081610117823960805181610178015260a05181818160f50152818161041c015281816106b0015281816108ca01528181610a2901528181610be001528181610c460152610efe015260c05181818160b101526105880152f35b63d92e233d60e01b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036100ea5756fe60806040526004361015610011575f80fd5b5f3560e01c80631cff79cd1461012457806341c64a2f146100e05780638988333b1461009c5763da4c4c4714610045575f80fd5b346100985760a03660031901126100985761005e6101dd565b506100676101f3565b5060443567ffffffffffffffff811161009857604090600319903603011261009857633954108560e21b5f5260045ffd5b5f80fd5b34610098575f366003190112610098576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b34610098575f366003190112610098576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b6040366003190112610098576101386101dd565b60243567ffffffffffffffff8111610098573660238201121561009857806004013567ffffffffffffffff811161009857366024828401011161009857307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146101ce576101ca9260246101b69301906102ab565b60405191829160208352602083019061021d565b0390f35b633954108560e21b5f5260045ffd5b600435906001600160a01b038216820361009857565b602435906001600160a01b038216820361009857565b35906001600160a01b038216820361009857565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b6040810190811067ffffffffffffffff82111761025d57604052565b634e487b7160e01b5f52604160045260245ffd5b90601f8019910116810190811067ffffffffffffffff82111761025d57604052565b67ffffffffffffffff811161025d5760051b60200190565b92905f92806004116100985781356001600160e01b03191663da4c4c4760e01b146102df576311fa59f360e11b8452600484fd5b919291810160a08282036003190112610098576102fe60048301610209565b9061030b60248401610209565b95604484013567ffffffffffffffff81116100985784019160408382036003190112610098576040519261033e84610241565b600481013567ffffffffffffffff81116100985760049082010182601f820112156100985780359061036f82610293565b9161037d6040519384610271565b80835260208084019160051b8301019185831161009857602001905b828210610f4a575050508452602481013567ffffffffffffffff81116100985760049101019080601f83011215610098578135906103d682610293565b926103e46040519485610271565b82845260208085019360051b82010191821161009857602001915b818310610f2e5750505060208301526001600160a01b03908116907f0000000000000000000000000000000000000000000000000000000000000000168103610eea5750805151600281108015610ee0575b610ece576020820151515f19820190828211610eba578103610eab5782516001600160a01b039061048190610f62565b5184519116916001600160a01b039161049a9190610f83565b51169060018060a01b0385161490811591610e97575b50610e73575f5b818110610e245750505f5b6020820151805182101561053a576104de8262ffffff92610f83565b511660648114158061052e575b80610522575b80610516575b61050457506001016104c2565b63264270fb60e21b5f5260045260245ffd5b506127108114156104f7565b50610bb88114156104f1565b506101f48114156104eb565b50509193949092946040519461054f86610241565b5f80875260208701526001600160a01b038516158015610e13575b8015610dfe575b610de0576064810135158015610dd4575b610dc5577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b156100985760405163066b3c5360e41b81526001600160a01b0387166004820152905f90829060249082905afa8015610dba57610da5575b506001600160a01b036105fb610fa4565b166001600160a01b03861614610d96576001600160a01b0361061b610fa4565b166001600160a01b03841603610d87576040516370a0823160e01b81523060048201526020816024816001600160a01b0388165afa908115610d4a578891610d55575b5086526040516370a0823160e01b81523060048201526020816024816001600160a01b038a165afa908115610d4a578891610d18575b50602087015260405163095ea7b360e01b885260018060a01b037f00000000000000000000000000000000000000000000000000000000000000001660045260648201356024526020886044818060018060a01b038b165af1906001895114821615610cff575b60405215610bc9575b61070e8451610f62565b51604051906bffffffffffffffffffffffff199060601b1660208201526014815261073a603482610271565b9487955b60208601518051881015610829578761075691610f83565b5160405160e89190911b6001600160e81b03191660208201526003815261077e602382610271565b86516001890190818a1161081557926020928c6107a061080d94600197610f83565b5191858060405192818401956bffffffffffffffffffffffff199060601b168652601484526107d0603485610271565b60405198878a985191829101848a015e870190828201868152815193849201905e0101918252518092825e018c815203601f198101835282610271565b96019561073e565b634e487b7160e01b8c52601160045260248cfd5b50919694509450959095604051906080820182811067ffffffffffffffff821117610bb557604052815260206108a081830192308452604081019360648a013585526060820160848b01358152604051958694859463b858183f60e01b8652876004870152516080602487015260a486019061021d565b92516001600160a01b039081166044860152905160648501529051608484015291900390829086907f0000000000000000000000000000000000000000000000000000000000000000165af18015610aa757610b86575b506040516370a0823160e01b81523060048201526020816024816001600160a01b0387165afa908115610aa7578291610b54575b506040516370a0823160e01b8152306004820152906020826024816001600160a01b038a165afa918215610b49578392610b13575b5061097261097a926020870151610f97565b945190610f97565b9460848101358610610af85750604051633325e1df60e01b8152602081600481305afa908115610aa7578291610ab6575b506001600160a01b0316803b15610ab257604051632530943760e01b81526001600160a01b038616600482015260248101859052604481018790529082908290606490829084905af18015610aa757610a8f575b5050604080516001600160a01b0394851681529184166020830152810191909152606081018390527f00000000000000000000000000000000000000000000000000000000000000009091169030907fd6d4f5681c246c9f42c203e287975af1601f8df8035a9251f79aab5c8f09e2f890608090a360405190602082015260208152610a8c604082610271565b90565b610a9a828092610271565b610aa457806109ff565b80fd5b6040513d84823e3d90fd5b5080fd5b90506020813d602011610af0575b81610ad160209383610271565b81010312610ab257516001600160a01b0381168103610ab2575f6109ab565b3d9150610ac4565b630583371760e31b8252600486905260840135602452604490fd5b91506020823d602011610b41575b81610b2e60209383610271565b8101031261009857905190610972610960565b3d9150610b21565b6040513d85823e3d90fd5b90506020813d602011610b7e575b81610b6f60209383610271565b8101031261009857515f61092b565b3d9150610b62565b6020813d602011610bad575b81610b9f60209383610271565b8101031261009857516108f7565b3d9150610b92565b634e487b7160e01b84526041600452602484fd5b60405163095ea7b360e01b88526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660045260248990526020908990604490829081908b165af1906001895114821615610cde575b60405215610c985760405163095ea7b360e01b88526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660045260648301356024526020908990604490829081908b165af1906001895114821615610cb4575b604052610704575b635274afe760e01b87526001600160a01b038516600452602487fd5b906001811516610cd5573d156001600160a01b0388163b1515161690610c90565b503d88823e3d90fd5b906001811516610cd5573d156001600160a01b0388163b1515161690610c27565b3d156001600160a01b0388163b151516909116906106fb565b90506020813d602011610d42575b81610d3360209383610271565b8101031261009857515f610694565b3d9150610d26565b6040513d8a823e3d90fd5b90506020813d602011610d7f575b81610d7060209383610271565b8101031261009857515f61065e565b3d9150610d63565b634847234360e01b8752600487fd5b6326ec736f60e11b8752600487fd5b610db29197505f90610271565b5f955f6105ea565b6040513d5f823e3d90fd5b631f2a200560e01b5f5260045ffd5b50608481013515610582565b632edfb9f560e21b5f9081526001600160a01b038616600452602490fd5b506001600160a01b0385811690841614610571565b506001600160a01b0383161561056a565b82516001600160a01b0390610e3a908390610f83565b511615610e49576001016104b7565b91516001600160a01b0392610e5f925090610f83565b5116632edfb9f560e21b5f5260045260245ffd5b630e084dd560e11b5f9081526001600160a01b038085166004528816602452604490fd5b6001600160a01b038916141590505f6104b0565b6316b0de1160e01b5f5260045ffd5b634e487b7160e01b5f52601160045260245ffd5b630f34c83160e21b5f5260045260245ffd5b5060058111610451565b63c3d4601f60e01b5f9081526004919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316602452604490fd5b823562ffffff81168103610098578152602092830192016103ff565b60208091610f5784610209565b815201910190610399565b805115610f6f5760200190565b634e487b7160e01b5f52603260045260245ffd5b8051821015610f6f5760209160051b010190565b91908203918211610eba57565b60405163cdf456e160e01b8152602081600481305afa908115610dba575f91610fcb575090565b90506020813d602011611002575b81610fe660209383610271565b8101031261009857516001600160a01b03811681036100985790565b3d9150610fd956fea26469706673582212207a4a3382686fb1aef02841692ea690544cca05bb110833eeaac91ec976084e2d64736f6c634300081c00330000000000000000000000002626664c2603336e57b271c5c0b26f421741e4810000000000000000000000002c61dc81bc40389ff11ce68e78e93a3f75e41b9c", + "nonce": "0x30", "chainId": "0x2105" }, "additionalContracts": [], "isFixedGasLimit": false }, { - "hash": "0x8824f4e199cb9ad5594d318dbc33c4592ee2ffb523f727d318cd768e7701d171", + "hash": "0x1f4f410b8aae741dbd59cc026cf95cac68c43875cc9ae951dafb034bce857df2", "transactionType": "CREATE2", - "contractName": "YieldSeekerAgentWalletV1", - "contractAddress": "0x0fe7ff9421839bd2cf4d0d959450f57491ea1109", + "contractName": "YieldSeekerAerodromeV2SwapAdapter", + "contractAddress": "0x01fe6834fa3af286d6c568dc868ceec08f7dad20", "function": null, "arguments": [ - "0x23AAFAeb5B78816dBCf20D503A73Cd9750A21d63" + "0xcF77a3Ba9A5CA399B7c97c74d54e5b1Beb874E43", + "0x420DD381b31aEf6683db6B902084cB0FFECe40Da", + "0x2c61dC81bc40389FF11CE68e78E93a3F75e41b9c" ], "transaction": { "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0x345b07", + "gas": "0x138ada", "value": "0x0", - "input": "0x000000000000000000000000000000000000000000000000000000000000000660c03461013457601f612cc338819003918201601f19168301916001600160401b038311848410176101385780849260209460405283398101031261013457516001600160a01b03811690819003610134573060805260a0525f516020612ca35f395f51905f525460ff8160401c16610125576002600160401b03196001600160401b038216016100cf575b604051612b56908161014d8239608051818181611021015281816110fb01526115f5015260a05181818161115f015281816115980152818161188a01526122710152f35b6001600160401b0319166001600160401b039081175f516020612ca35f395f51905f52556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a15f61008b565b63f92ee8a960e01b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f5f3560e01c80630a3b7ad714611acc57806318dfb3c714611a6a5780631dec8ea5146119f3578063244c9c291461193057806329db6ee6146118b95780632dd31000146118755780633325e1df14611841578063367ad9e2146115595780633a871cdd146114865780634798faf5146113515780634f1ef286146110aa57806350b5c16a1461107557806352d1902d1461100e5780635c0df1a414610efc57806387f2f0b614610d7b5780638da5cb5b14610d4657806395243dd114610d2057806397d0763c14610ae157806397ef965514610abb578063ad3cb1cc14610a6e578063b0246dc114610a11578063b0d691fe146109e2578063b1588fb61461099f578063b61d27f614610951578063c350a1b5146107ff578063c51f172d14610783578063c87965721461070d578063cd6dc687146105e2578063cdf456e1146105ad578063d087d2881461050d578063d589621f146104db578063d8adf13914610473578063e9490cac14610436578063fb04898d146102375763fe717335146101a6575061000e565b34610234576020366003190112610234576101bf611b8c565b5f516020612a615f395f51905f52546001600160a01b03163303610221576101e681611cf7565b805460ff191660011790556001600160a01b03167f02cabee40f87619dfcb340449404a4513e5c455e77013d441169b12a26e70a218280a280f35b63472511eb60e11b825233600452602482fd5b80fd5b503461023457604036600319011261023457610251611b8c565b5f516020612a615f395f51905f5254602435906001600160a01b03163303610423576001600160a01b038216908115610414575f516020612b015f395f51905f52546040516370a0823160e01b81523060048201526001600160a01b039091169390602081602481885afa80156104095786906103d6575b5f516020612a415f395f51905f52546040516378e6802560e01b81523060048201529250602090839060249082906001600160a01b03165afa80156103cb5784928891610392575b508082111561038a5761032391611d7b565b1061037b578161033391856126b4565b5f516020612a615f395f51905f52546040519182526001600160a01b0316907f8c0281578dec46ac28aa238d1ddc3bce894975318c50432a4b4c82e58777621690602090a480f35b631e9acf1760e31b8552600485fd5b505085610323565b9250506020823d6020116103c3575b816103ae60209383611c39565b810103126103bf578391515f610311565b5f80fd5b3d91506103a1565b6040513d89823e3d90fd5b506020813d602011610401575b816103f060209383611c39565b810103126103bf57602490516102c9565b3d91506103e3565b6040513d88823e3d90fd5b63d92e233d60e01b8452600484fd5b63472511eb60e11b835233600452602483fd5b503461023457806003193601126102345760207f901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9cd54604051908152f35b50346102345780600319360112610234575f516020612a615f395f51905f52546001600160a01b0316331415806104c7575b6104b4576104b1612219565b80f35b63472511eb60e11b815233600452602490fd5b5060ff6104d333611cbf565b5416156104a5565b503461023457602036600319011261023457602060ff6105016104fc611b8c565b611d2f565b54166040519015158152f35b5034610234578060031936011261023457604051631aab3f0d60e11b81523060048201526024810182905290602082604481735ff137d4b0fdcd49dca30c7cf57e578a026d27895afa9081156105a1579061056e575b602090604051908152f35b506020813d602011610599575b8161058860209383611c39565b810103126103bf5760209051610563565b3d915061057b565b604051903d90823e3d90fd5b50346102345780600319360112610234575f516020612b015f395f51905f52546040516001600160a01b039091168152602090f35b5034610234576040366003190112610234576105fc611b8c565b5f516020612ae15f395f51905f5254906001600160401b0360ff8360401c1615921680159081610705575b60011490816106fb575b1590816106f2575b506106e357610659908261064b611e31565b6106b3575b602435906127c2565b6106605780f35b60ff60401b195f516020612ae15f395f51905f5254165f516020612ae15f395f51905f52557fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602060405160018152a180f35b600160401b60ff60401b195f516020612ae15f395f51905f525416175f516020612ae15f395f51905f5255610650565b63f92ee8a960e01b8352600483fd5b9050155f610639565b303b159150610631565b839150610627565b5034610234578060031936011261023457735ff137d4b0fdcd49dca30c7cf57e578a026d278933141580610762575b8061074e575b6104b4576104b1611e5e565b5060ff61075a33611cbf565b541615610742565b505f516020612a615f395f51905f52546001600160a01b031633141561073c565b50346102345760203660031901126102345761079d611b8c565b5f516020612a615f395f51905f52546001600160a01b03163303610221576107c481611d2f565b805460ff191660011790556001600160a01b03167ff1b199bc156d70448988140152c13e4e7cef2ce43f60e7e96802e64181acba958280a280f35b503461023457606036600319011261023457610819611b8c565b6044356001600160a01b038116929183820361094d575f516020612ae15f395f51905f5254916001600160401b0360ff8460401c1615931680159081610945575b600114908161093b575b159081610932575b50610923578261087a611e31565b6108f3575b60ff5f516020612ae15f395f51905f525460401c16156108e4578415610414573b156108d0575f516020612b015f395f51905f5280546001600160a01b0319168517905561065990602435906127c2565b6322a2d07b60e21b83526004849052602483fd5b631afcd79f60e31b8452600484fd5b600160401b60ff60401b195f516020612ae15f395f51905f525416175f516020612ae15f395f51905f525561087f565b63f92ee8a960e01b8452600484fd5b9050155f61086c565b303b159150610864565b84915061085a565b8280fd5b50346102345760603660031901126102345761096b611b8c565b506044356001600160401b03811161099b579061098d60049236908401611bb8565b5050631eb49d6d60e11b8152fd5b5080fd5b5034610234576020366003190112610234576109b9611b8c565b5f516020612a615f395f51905f52546001600160a01b03163303610221576104b1904790612735565b50346102345780600319360112610234576020604051735ff137d4b0fdcd49dca30c7cf57e578a026d27898152f35b503461023457604036600319011261023457610a2b611b8c565b5f516020612a615f395f51905f525460243591906001600160a01b0316330361042357814710610a5f57906104b191612735565b631e9acf1760e31b8352600483fd5b503461023457806003193601126102345750610ab7604051610a91604082611c39565b60058152640352e302e360dc1b6020820152604051918291602083526020830190611be5565b0390f35b503461023457602036600319011261023457602060ff610501610adc611b8c565b611cbf565b5034610234576060366003190112610234576004356001600160401b03811161099b57610b12903690600401611c09565b91906024356001600160401b03811161094d57610b33903690600401611c09565b906044356001600160401b038111610d1c57610b53903690600401611c09565b92735ff137d4b0fdcd49dca30c7cf57e578a026d278933141580610cfb575b80610ce7575b610cd457808714801590610cca575b610cbb57610b96879697611d9c565b95610ba46040519788611c39565b808752601f19610bb382611d9c565b01885b818110610ca8575050875b818110610c2f5787896040519182916020830160208452825180915260408401602060408360051b870101940192905b828210610c0057505050500390f35b91936001919395506020610c1f8192603f198a82030186528851611be5565b9601920192018594939192610bf1565b610c42610c3d82848a611db3565b611dd7565b610c50610c3d838689611db3565b9087831015610c94578291610c7891610c7060019560051b890189611deb565b929091612055565b610c82828b611e1d565b52610c8d818a611e1d565b5001610bc1565b634e487b7160e01b8b52603260045260248bfd5b60606020828b0181019190915201610bb6565b63baf3f0f760e01b8652600486fd5b5083871415610b87565b63472511eb60e11b865233600452602486fd5b5060ff610cf333611cbf565b541615610b78565b505f516020612a615f395f51905f52546001600160a01b0316331415610b72565b8480fd5b503461023457602036600319011261023457602060ff610501610d41611b8c565b611cf7565b50346102345780600319360112610234575f516020612a615f395f51905f52546040516001600160a01b039091168152602090f35b503461023457602036600319011261023457610d95611b8c565b5f516020612a615f395f51905f52546001600160a01b03163303610221576001600160a01b0381168015610eed575f516020612b015f395f51905f52546040516370a0823160e01b81523060048201526001600160a01b039091169290602081602481875afa8015610ee2578590610eaf575b5f516020612a415f395f51905f52546040516378e6802560e01b81523060048201529250602090839060249082906001600160a01b03165afa918215610409578692610e7b575b5081811115610e6e5761033391610e6591611d7b565b80925b856126b4565b5050610333848092610e68565b9091506020813d602011610ea7575b81610e9760209383611c39565b810103126103bf5751905f610e4f565b3d9150610e8a565b506020813d602011610eda575b81610ec960209383611c39565b810103126103bf5760249051610e08565b3d9150610ebc565b6040513d87823e3d90fd5b63d92e233d60e01b8352600483fd5b503461023457604036600319011261023457610f16611b8c565b610f1e611ba2565b5f516020612a615f395f51905f52546001600160a01b03163303610423576001600160a01b038216908115610414576001600160a01b0316918215610414575f516020612b015f395f51905f52546001600160a01b03168303610fff576040516370a0823160e01b8152306004820152602081602481875afa8015610ee2578590610eaf575f516020612a415f395f51905f52546040516378e6802560e01b81523060048201529250602090839060249082906001600160a01b03165afa918215610409578692610e7b575081811115610e6e5761033391610e6591611d7b565b636448d6e960e11b8452600484fd5b50346102345780600319360112610234577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036110665760206040515f516020612a815f395f51905f528152f35b63703e46dd60e11b8152600490fd5b50346102345780600319360112610234575f516020612aa15f395f51905f52546040516001600160a01b039091168152602090f35b506040366003190112610234576110bf611b8c565b906024356001600160401b03811161099b573660238201121561099b576110f0903690602481600401359101611c89565b916001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630811490811561132f575b50611320575f516020612a615f395f51905f52546001600160a01b03163303610221576040516368fe596f60e01b8152906020826004817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa9182156113155783926112d9575b506001600160a01b03818116921682036112ca576040516352d1902d60e01b815293602085600481865afa80958596611296575b506111e457634c9c8ce360e01b84526004839052602484fd5b9091845f516020612a815f395f51905f5281036112845750823b15611272575f516020612a815f395f51905f5280546001600160a01b031916821790557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051156112595761125591612932565b5080f35b5050346112635780f35b63b398979f60e01b8152600490fd5b634c9c8ce360e01b8452600452602483fd5b632a87526960e21b8552600452602484fd5b9095506020813d6020116112c2575b816112b260209383611c39565b81010312610d1c5751945f6111cb565b3d91506112a5565b632c8cb44760e21b8352600483fd5b9091506020813d60201161130d575b816112f560209383611c39565b8101031261094d5761130690611d67565b905f611197565b3d91506112e8565b6040513d85823e3d90fd5b63703e46dd60e11b8252600482fd5b5f516020612a815f395f51905f52546001600160a01b0316141590505f611126565b50346102345760603660031901126102345761136b611b8c565b611373611ba2565b5f516020612a615f395f51905f5254604435906001600160a01b03163303611473576001600160a01b038316918215611464576001600160a01b0316928315611464575f516020612b015f395f51905f52546001600160a01b03168403611455576040516370a0823160e01b8152306004820152602081602481885afa80156104095786906103d6575f516020612a415f395f51905f52546040516378e6802560e01b81523060048201529250602090839060249082906001600160a01b03165afa80156103cb578492889161039257508082111561038a5761032391611d7b565b636448d6e960e11b8552600485fd5b63d92e233d60e01b8552600485fd5b63472511eb60e11b845233600452602484fd5b503461023457606036600319011261023457600435906001600160401b0382116102345761016060031983360301126102345760443590735ff137d4b0fdcd49dca30c7cf57e578a026d27893303611514576114ea6020936024359060040161261a565b91806114fb575b5050604051908152f35b81808092335f19f15061150c612026565b505f806114f1565b60405162461bcd60e51b815260206004820152601c60248201527f6163636f756e743a206e6f742066726f6d20456e747279506f696e74000000006044820152606490fd5b50346103bf575f3660031901126103bf575f516020612a615f395f51905f52546001600160a01b0316330361182e576040516368fe596f60e01b8152907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316602083600481845afa9283156117b6575f936117f2575b506020926040516115e88582611c39565b5f81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163081149081156117d0575b506117c15784600493604051948580926368fe596f60e01b82525afa9283156117b6575f9361177f575b506001600160a01b0382811693168303611770576040516352d1902d60e01b8152948086600481875afa9586915f97611740575b505061169857634c9c8ce360e01b84526004839052602484fd5b9091845f516020612a815f395f51905f52810361172e5750823b1561171c575f516020612a815f395f51905f5280546001600160a01b031916821790557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a28051156117135761170991612932565b505b6104b1612219565b5050505f61170b565b634c9c8ce360e01b5f5260045260245ffd5b632a87526960e21b5f5260045260245ffd5b9080929750813d8311611769575b6117588183611c39565b810103126103bf5751945f8061167e565b503d61174e565b632c8cb44760e21b5f5260045ffd5b9092508481813d83116117af575b6117978183611c39565b810103126103bf576117a890611d67565b915f61164a565b503d61178d565b6040513d5f823e3d90fd5b63703e46dd60e11b5f5260045ffd5b5f516020612a815f395f51905f52546001600160a01b0316141590505f611620565b9092506020813d602011611826575b8161180e60209383611c39565b810103126103bf5761181f90611d67565b915f6115d7565b3d9150611801565b63472511eb60e11b5f523360045260245ffd5b346103bf575f3660031901126103bf575f516020612a415f395f51905f52546040516001600160a01b039091168152602090f35b346103bf575f3660031901126103bf576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b346103bf5760203660031901126103bf576118d2611b8c565b5f516020612a615f395f51905f52546001600160a01b0316330361182e576118f981611d2f565b805460ff191690556001600160a01b03167f198fca18affd5cdc64b42124fdf8d289753f0d02f2a15c366b5518a818ee36385f80a2005b346103bf575f3660031901126103bf576040518060205f516020612ac15f395f51905f5254928381520180925f516020612ac15f395f51905f525f5260205f20905f5b8181106119d45750505081611989910382611c39565b604051918291602083019060208452518091526040830191905f5b8181106119b2575050500390f35b82516001600160a01b03168452859450602093840193909201916001016119a4565b82546001600160a01b0316845260209093019260019283019201611973565b346103bf5760203660031901126103bf57611a0c611b8c565b5f516020612a615f395f51905f52546001600160a01b0316330361182e57611a3381611cf7565b805460ff191690556001600160a01b03167f7782eb55436ef47a10922ca1f2f49b9800a23991e6b6419ad7251dcff91ea07b5f80a2005b346103bf5760403660031901126103bf576004356001600160401b0381116103bf57611a9a903690600401611c09565b50506024356001600160401b0381116103bf57611abb903690600401611c09565b5050631eb49d6d60e11b5f5260045ffd5b346103bf5760603660031901126103bf57611ae5611b8c565b611aed611ba2565b906044356001600160401b0381116103bf57611b0d903690600401611bb8565b90735ff137d4b0fdcd49dca30c7cf57e578a026d278933141580611b6b575b80611b57575b61182e57610ab793611b4393612055565b604051918291602083526020830190611be5565b5060ff611b6333611cbf565b541615611b32565b505f516020612a615f395f51905f52546001600160a01b0316331415611b2c565b600435906001600160a01b03821682036103bf57565b602435906001600160a01b03821682036103bf57565b9181601f840112156103bf578235916001600160401b0383116103bf57602083818601950101116103bf57565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9181601f840112156103bf578235916001600160401b0383116103bf576020808501948460051b0101116103bf57565b90601f801991011681019081106001600160401b03821117611c5a57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b038111611c5a57601f01601f191660200190565b929192611c9582611c6e565b91611ca36040519384611c39565b8294818452818301116103bf578281602093845f960137010152565b6001600160a01b03165f9081527f901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9d06020526040902090565b6001600160a01b03165f9081527f901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9d16020526040902090565b6001600160a01b03165f9081527f901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9d26020526040902090565b51906001600160a01b03821682036103bf57565b91908203918211611d8857565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b038111611c5a5760051b60200190565b9190811015611dc35760051b0190565b634e487b7160e01b5f52603260045260245ffd5b356001600160a01b03811681036103bf5790565b903590601e19813603018212156103bf57018035906001600160401b0382116103bf576020019181360383136103bf57565b8051821015611dc35760209160051b010190565b60016001600160401b03195f516020612ae15f395f51905f525416175f516020612ae15f395f51905f5255565b5f516020612a415f395f51905f52546040516378e6802560e01b81523060048201526001600160a01b0390911690602081602481855afa9081156117b6575f91611ff4575b508015611ff0575f516020612b015f395f51905f52546040516370a0823160e01b81523060048201526001600160a01b0390911691602082602481865afa9182156117b6575f92611fbc575b5081811115611fb45750905b81611f0557505050565b6040516331056e5760e21b8152602081600481875afa80156117b65783915f91611f73575b50611f34926126b4565b813b156103bf575f916024839260405194859384926322bf55ef60e01b845260048401525af180156117b657611f675750565b5f611f7191611c39565b565b9150506020813d602011611fac575b81611f8f60209383611c39565b810103126103bf57611f3491611fa58492611d67565b9092611f2a565b3d9150611f82565b905090611efb565b9091506020813d602011611fe8575b81611fd860209383611c39565b810103126103bf5751905f611eef565b3d9150611fcb565b5050565b90506020813d60201161201e575b8161200f60209383611c39565b810103126103bf57515f611ea3565b3d9150612002565b3d15612050573d9061203782611c6e565b916120456040519384611c39565b82523d5f602084013e565b606090565b92909160ff61206385611cf7565b54166121fb5760ff61207484611d2f565b54166121dd575f516020612aa15f395f51905f5254604051631293382360e21b81526001600160a01b039485166004820181905294909160209183916024918391165afa9081156117b6575f916121a3575b506001600160a01b0316801590811561218f575b5061217157918161213660845f96949587966040519485926020840197631cff79cd60e01b89526024850152604060448501528160648501528484013787838284010152601f801991011681010301601f198101835282611c39565b51915af490612143612026565b911561214b57565b60405163c2ac6b1560e01b8152602060048201528061216d6024820185611be5565b0390fd5b63fc6da03f60e01b5f9081526001600160a01b038516600452602490fd5b6001600160a01b038616141590505f6120da565b90506020813d6020116121d5575b816121be60209383611c39565b810103126103bf576121cf90611d67565b5f6120c6565b3d91506121b1565b632b22728160e01b5f9081526001600160a01b038416600452602490fd5b632d9fc4df60e01b5f9081526001600160a01b038516600452602490fd5b5f5b5f516020612ac15f395f51905f52548110156122615780612253612240600193612854565b848060a01b0391549060031b1c16611cbf565b805460ff191690550161221b565b5060405163244c9c2960e01b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316905f81600481855afa9081156117b6575f91612582575b508051906001600160401b038211611c5a57600160401b8211611c5a575f516020612ac15f395f51905f5254825f516020612ac15f395f51905f5255808310612532575b506020015f516020612ac15f395f51905f525f5260205f205f5b83811061251557505050505f5b5f516020612ac15f395f51905f52548110156123505780612340612240600193612854565b805460ff1916831790550161231b565b5060405163285ae0b560e11b8152602081600481855afa9081156117b6575f916124db575b506001600160a01b0381169081156124cc573b156124cc57806020916bffffffffffffffffffffffff60a01b5f516020612aa15f395f51905f525416175f516020612aa15f395f51905f52556004604051809481937fbf763557c505c1b722bd3c3ed64e9285f16c762c09089af49b698a584d6642115f80a2633325e1df60e01b82525afa9081156117b6575f9161248a575b506001600160a01b0316801561247b57803b1561247b575f516020612a415f395f51905f5280546001600160a01b031916821790555f516020612aa15f395f51905f52546001600160a01b03167fcb42010e342ceb4c4105e1c628b15b7192d9ed5fc3d3dd7f3b45d5f3f6850fec5f80a3565b636c01d5a960e11b5f5260045ffd5b90506020813d6020116124c4575b816124a560209383611c39565b810103126103bf57516001600160a01b03811681036103bf575f612408565b3d9150612498565b6311a1e69760e01b5f5260045ffd5b90506020813d60201161250d575b816124f660209383611c39565b810103126103bf5761250790611d67565b5f612375565b3d91506124e9565b82516001600160a01b03168183015560209092019160010161230e565b5f516020612ac15f395f51905f525f527fa4d961140a2e255508446e5505d53a08f1773a113864933ae8ed69319e4ac2219081019083015b81811061257757506122f4565b5f815560010161256a565b90503d805f833e6125938183611c39565b8101906020818303126103bf578051906001600160401b0382116103bf57019080601f830112156103bf5781516125c981611d9c565b926125d76040519485611c39565b81845260208085019260051b8201019283116103bf57602001905b828210612602575050505f6122b0565b6020809161260f84611d67565b8152019101906125f2565b61266b90612674927f19457468657265756d205369676e6564204d6573736167653a0a3332000000005f52601c5261266561265e603c5f2092610140810190611deb565b3691611c89565b90612884565b909291926128be565b5f516020612a615f395f51905f52546001600160a01b038281169116146126af576126a060ff91611cbf565b54166126ab57600190565b5f90565b505f90565b916040519163a9059cbb60e01b5f5260018060a01b031660045260245260205f60448180865af19060015f5114821615612714575b604052156126f45750565b635274afe760e01b5f9081526001600160a01b0391909116600452602490fd5b90600181151661272c57823b15153d151616906126e9565b503d5f823e3d90fd5b6001600160a01b038116919082156127b3575f80808481945af1612757612026565b50156127a4575f516020612a615f395f51905f52546040519182526001600160a01b0316907f5c3457fa8f0624848f7477f9bc10f88c2c14a6f88ff9dfdfb6f6978a9dea47a890602090a3565b6312171d8360e31b5f5260045ffd5b63d92e233d60e01b5f5260045ffd5b6001600160a01b03169081156127b3575f516020612a615f395f51905f5280546001600160a01b031916831790557f901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9cd5561281a612219565b735ff137d4b0fdcd49dca30c7cf57e578a026d27897ed85ca086af8cd244972a2f5c120c23ed58e508f2922c683db6a936a3838f1b5f80a3565b5f516020612ac15f395f51905f5254811015611dc3575f516020612ac15f395f51905f525f5260205f2001905f90565b81519190604183036128b4576128ad9250602082015190606060408401519301515f1a906129be565b9192909190565b50505f9160029190565b600481101561291e57806128d0575050565b600181036128e75763f645eedf60e01b5f5260045ffd5b60028103612902575063fce698f760e01b5f5260045260245ffd5b60031461290c5750565b6335e2f38360e21b5f5260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b905f8091602081519101845af480806129ab575b156129665750506040513d81523d5f602083013e60203d82010160405290565b1561298b57639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b3d1561299c576040513d5f823e3d90fd5b63d6bda27560e01b5f5260045ffd5b503d1515806129465750813b1515612946565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08411612a35579160209360809260ff5f9560405194855216868401526040830152606082015282805260015afa156117b6575f516001600160a01b03811615612a2b57905f905f90565b505f906001905f90565b5050505f916003919056fee1188561a552547db41879b73f85c993e73258928fd045015f7eda908faeb609901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9cc360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9ce901ebb5305bfc9018fe46ce288a2febf943d9263140e9c913b0707d8f0dbf9cff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00e1188561a552547db41879b73f85c993e73258928fd045015f7eda908faeb608a2646970667358221220deca17a5ea1775d438e9b366f2d3a5a11563f37657df2faa446cab7112e99bc964736f6c634300081c0033f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0000000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d63", - "nonce": "0x2", + "input": "0x0000000000000000000000000000000000000000000000000000000000000007610100346100fb57601f610fed38819003918201601f19168301916001600160401b038311848410176100ff578084926060946040528339810103126100fb5761004881610113565b90610061604061005a60208401610113565b9201610113565b30608052916001600160a01b0381161580156100ea575b6100db5760a05260c0526001600160a01b038116156100db5760e052604051610ec590816101288239608051816101c9015260a051818181610100015261048c015260c05181818161014401526106b3015260e05181818160bc01526105610152f35b63d92e233d60e01b5f5260045ffd5b506001600160a01b03821615610078565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036100fb5756fe60806040526004361015610011575f80fd5b5f3560e01c80631cff79cd1461017357806342f3cb361461012f578063825427e2146100eb5780638988333b146100a757639f5ab9ed14610050575f80fd5b346100a35760a03660031901126100a357610069610244565b5061007261025a565b5060443567ffffffffffffffff81116100a35760409060031990360301126100a357633954108560e21b5f5260045ffd5b5f80fd5b346100a3575f3660031901126100a3576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b346100a3575f3660031901126100a3576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b346100a3575f3660031901126100a3576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b60403660031901126100a357610187610244565b6024359067ffffffffffffffff82116100a357366023830112156100a35781600401359167ffffffffffffffff83116100a35736602484830101116100a357307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461023557602092604092602461020993019061030a565b815192839181835280519182918282860152018484015e5f828201840152601f01601f19168101030190f35b633954108560e21b5f5260045ffd5b600435906001600160a01b03821682036100a357565b602435906001600160a01b03821682036100a357565b35906001600160a01b03821682036100a357565b6040810190811067ffffffffffffffff8211176102a057604052565b634e487b7160e01b5f52604160045260245ffd5b6080810190811067ffffffffffffffff8211176102a057604052565b90601f8019910116810190811067ffffffffffffffff8211176102a057604052565b67ffffffffffffffff81116102a05760051b60200190565b92905f92806004116100a35781356001600160e01b031916639f5ab9ed60e01b1461033e576311fa59f360e11b8452600484fd5b919291810160a082820360031901126100a35761035d60048301610270565b9261036a60248401610270565b94604484013567ffffffffffffffff81116100a357840194604086850360031901126100a3576040519561039d87610284565b600481013567ffffffffffffffff81116100a35760049082010185601f820112156100a3578035906103ce826102f2565b916103dc60405193846102d0565b80835260208084019160051b830101918883116100a357602001905b828210610df0575050508752602481013567ffffffffffffffff81116100a35760049101019380601f860112156100a357843590610435826102f2565b9561044360405197886102d0565b82875260208088019360051b8201019182116100a357602001915b818310610dd757505050602086019384526001600160a01b03968716979087169660648601359560840135917f000000000000000000000000000000000000000000000000000000000000000082169116818103610dc25750865151600281108015610db8575b610da6578551515f19820190828211610d92578103610d83578851805115610d6f576020015189516001600160a01b03918216928d928d92909161050891610e08565b5116921491821592610d64575b5050610d4d575f5b818110610d005750506040519761053389610284565b5f895260208901985f8a5281158015610cf8575b8015610cef575b610cdc5787158015610cd4575b610cc5577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b156100a3575f6024916040519283809263066b3c5360e41b82528760048301525afa8015610cba57610ca5575b506001600160a01b036105c9610e29565b168214610c96576001600160a01b036105e0610e29565b168b03610c87576040516370a0823160e01b81523060048201526020816024818f5afa908115610c4a578791610c55575b5081526040516370a0823160e01b8152306004820152602081602481865afa908115610c4a578791610c18575b508a5260405163095ea7b360e01b8752836004528860245260208760448180875af1906001885114821615610c09575b60405215610b52575b8699979951519a6106878c6102f2565b9b6106956040519d8e6102d0565b808d526106a4601f19916102f2565b01875b8d828210610b1c5750507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316999050875b895151811015610788578b516001600160a01b0390610700908390610e08565b51168c51600183018311610774578f9260019381938f8f61073b8561076d976107328b8060a01b03918c840190610e08565b51169251610e08565b511515906040519361074c856102b4565b84526020840152604083015260608201526107678383610e08565b52610e08565b50016106e0565b634e487b7160e01b8b52601160045260248bfd5b50949a92985095949a929850955083604051809363cac88ea960e01b825260a482019360048301528b602483015260a060448301528051809452602060c48301910193835b818110610acb5750508192935030606483015263ffffffff60848301520381838b5af18015610a2657610a31575b506040516370a0823160e01b8152306004820152602081602481875afa908115610a265783916109f4575b506040516370a0823160e01b81523060048201526020816024818a5afa9081156109e95784916109b5575b50610860906108689351610e1c565b945190610e1c565b9580871061099d5750604051633325e1df60e01b8152602081600481305afa90811561094c57829161095b575b506001600160a01b0316803b1561095757818091606460405180948193632530943760e01b83528a60048401528960248401528c60448401525af1801561094c57610934575b5050604051928352602083015260408201528260608201527fd6d4f5681c246c9f42c203e287975af1601f8df8035a9251f79aab5c8f09e2f860803092a3604051906020820152602081526109316040826102d0565b90565b61093f8280926102d0565b61094957806108db565b80fd5b6040513d84823e3d90fd5b5080fd5b90506020813d602011610995575b81610976602093836102d0565b8101031261095757516001600160a01b0381168103610957575f610895565b3d9150610969565b630583371760e31b8252600487905260245260449150fd5b90506020813d6020116109e1575b816109d0602093836102d0565b810103126100a35751610868610851565b3d91506109c3565b6040513d86823e3d90fd5b90506020813d602011610a1e575b81610a0f602093836102d0565b810103126100a357515f610826565b3d9150610a02565b6040513d85823e3d90fd5b3d8084833e610a4081836102d0565b810190602081830312610ac35780519067ffffffffffffffff8211610ac757019080601f83011215610ac3578151610a77816102f2565b92610a8560405194856102d0565b81845260208085019260051b820101928311610abf57602001905b828210610aaf575050506107fb565b8151815260209182019101610aa0565b8580fd5b8380fd5b8480fd5b855180516001600160a01b03908116855260208083015182168187015260408084015115159087015260609283015190911691850191909152909501948894508693506080909201916001016107cd565b90602091829c9e9c8260405192610b32846102b4565b8d84528d838501528d60408501528d6060850152010152019b999b6106a7565b60405163095ea7b360e01b8752836004528660245260208760448180875af1906001885114821615610bf1575b60405215610bbc5760405163095ea7b360e01b8752836004528860245260208760448180875af1906001885114821615610bd0575b604052610677575b635274afe760e01b86526004829052602486fd5b906001811516610be857833b15153d15161690610bb4565b503d87823e3d90fd5b906001811516610be857833b15153d15161690610b7f565b90833b15153d1516169061066e565b90506020813d602011610c42575b81610c33602093836102d0565b810103126100a357515f61063e565b3d9150610c26565b6040513d89823e3d90fd5b90506020813d602011610c7f575b81610c70602093836102d0565b810103126100a357515f610611565b3d9150610c63565b634847234360e01b8652600486fd5b6326ec736f60e11b8652600486fd5b610cb29196505f906102d0565b5f945f6105b8565b6040513d5f823e3d90fd5b631f2a200560e01b5f5260045ffd5b50831561055b565b50632edfb9f560e21b5f5260045260245ffd5b508a821461054e565b508a15610547565b88516001600160a01b0390610d16908390610e08565b511615610d255760010161051d565b88516001600160a01b0391610d3991610e08565b5116632edfb9f560e21b5f5260045260245ffd5b8989630e084dd560e11b5f5260045260245260445ffd5b141590508a5f610515565b634e487b7160e01b5f52603260045260245ffd5b6316b0de1160e01b5f5260045ffd5b634e487b7160e01b5f52601160045260245ffd5b630f34c83160e21b5f5260045260245ffd5b50600581116104c5565b632ba79f4360e21b5f5260045260245260445ffd5b823580151581036100a35781526020928301920161045e565b60208091610dfd84610270565b8152019101906103f8565b8051821015610d6f5760209160051b010190565b91908203918211610d9257565b60405163cdf456e160e01b8152602081600481305afa908115610cba575f91610e50575090565b90506020813d602011610e87575b81610e6b602093836102d0565b810103126100a357516001600160a01b03811681036100a35790565b3d9150610e5e56fea26469706673582212209a7c7bc61d35ae306b9ba3234c96b9b982dfb3541ae79ecbdd3aecaa6920057e64736f6c634300081c0033000000000000000000000000cf77a3ba9a5ca399b7c97c74d54e5b1beb874e43000000000000000000000000420dd381b31aef6683db6b902084cb0ffece40da0000000000000000000000002c61dc81bc40389ff11ce68e78e93a3f75e41b9c", + "nonce": "0x31", "chainId": "0x2105" }, "additionalContracts": [], "isFixedGasLimit": false }, { - "hash": "0x2cdf70d0268ca2dd70328a3f1d83faa45f9480531ec5d530f15abe2a56473f0f", + "hash": "0x6f0e6d853692140ee8196fe209a590102f1568fb481cba620b058db349733e29", "transactionType": "CREATE2", - "contractName": "YieldSeekerAdapterRegistry", - "contractAddress": "0x81f17748b0abe955790346b904f6b78e67594ed0", + "contractName": "YieldSeekerAerodromeCLSwapAdapter", + "contractAddress": "0x840974f44d2738661703292ccf339c404a864ac4", "function": null, "arguments": [ - "0x60163d6406503426E712eD6c507137229552756D", - "0xF8CBf6437d2473eC59885299Af38D9A13cE97ecA" + "0xBE6D8f0d05cC4be24d5167a3eF062215bE6D18a5", + "0x2c61dC81bc40389FF11CE68e78E93a3F75e41b9c" ], "transaction": { "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0x11ddb0", + "gas": "0x154faf", "value": "0x0", - "input": "0x00000000000000000000000000000000000000000000000000000000000000066080346100a157601f610f7a38819003918201601f19168301916001600160401b038311848410176100a55780849260409485528339810103126100a157610052602061004b836100b9565b92016100b9565b6001600160a01b03821615610092576001600160a01b038116156100925761007c610082926100cd565b50610143565b50604051610d4390816101d78239f35b63d92e233d60e01b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036100a157565b6001600160a01b0381165f9081525f516020610f5a5f395f51905f52602052604090205460ff1661013e576001600160a01b03165f8181525f516020610f5a5f395f51905f5260205260408120805460ff191660011790553391905f516020610f1a5f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f516020610f3a5f395f51905f52602052604090205460ff1661013e576001600160a01b03165f8181525f516020610f3a5f395f51905f5260205260408120805460ff191660011790553391907fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b26905f516020610f1a5f395f51905f529080a460019056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a71461086f575080631d46021f146106e157806320df4359146106a757806322f2caf114610620578063248a9ca3146105ee5780632f2ff15d146105b157806336568abe1461056d5780633f4ba83a146105075780634a4ce08c1461048b5780635c975abb14610469578063618295df146103dd5780638456cb591461038557806391d148541461033d5780639362149e14610215578063a217fddf146101fb578063d547741f146101b7578063d5d7ff3c146101235763fa351f79146100e2575f80fd5b3461011f57602036600319011261011f576001600160a01b036101036108c2565b165f526005602052602060ff60405f2054166040519015158152f35b5f80fd5b3461011f57602036600319011261011f5761013c6108c2565b6101446109aa565b6001600160a01b031661015681610ba0565b90156101a457815f5260046020525f604081205561017382610c4e565b506001600160a01b0316907f95acdd767bfb2c6578833b7678c4dcc015f00b35820877f64a390809892628015f80a3005b50633b3f036f60e01b5f5260045260245ffd5b3461011f57604036600319011261011f576101f96004356101d66108d8565b906101f46101ef825f525f602052600160405f20015490565b610a19565b610ad9565b005b3461011f575f36600319011261011f5760206040515f8152f35b3461011f57604036600319011261011f5761022e6108c2565b6102366108d8565b61023e61095b565b6001600160a01b03821690811561032e576001600160a01b0381165f8181526005602052604090205490939060ff161561031b5761027b83610ba0565b6001600160a01b03169290156102e95784830361029457005b61029d91610b74565b50817f95acdd767bfb2c6578833b7678c4dcc015f00b35820877f64a390809892628015f80a37f1cf35c87329e14a81fdc68af8a463c1db203ccfc925ff5150f5dbc71bc4c23725f80a3005b906102f49250610b74565b507f1cf35c87329e14a81fdc68af8a463c1db203ccfc925ff5150f5dbc71bc4c23725f80a3005b8363fc6da03f60e01b5f5260045260245ffd5b63d92e233d60e01b5f5260045ffd5b3461011f57604036600319011261011f576103566108d8565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011f575f36600319011261011f5761039d6109aa565b6103a5610b59565b600160ff19815416176001557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b3461011f57602036600319011261011f576103f66108c2565b6103fe6109aa565b6001600160a01b03165f8181526005602052604090205460ff161561045757805f52600560205260405f2060ff1981541690557f9fbc8baf3d886b40fce5c05b089495702c9f5d8cb64f9c05db1a25e040d062965f80a2005b63fc6da03f60e01b5f5260045260245ffd5b3461011f575f36600319011261011f57602060ff600154166040519015158152f35b3461011f57602036600319011261011f576104bd6104a76108c2565b6104af610b59565b6001600160a01b0316610ba0565b6001600160a01b031690806104f1575b156104e8576020905b6040516001600160a01b039091168152f35b5060205f6104d6565b50805f52600560205260ff60405f2054166104cd565b3461011f575f36600319011261011f5761051f61095b565b60015460ff81161561055e5760ff19166001557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b3461011f57604036600319011261011f576105866108d8565b336001600160a01b038216036105a2576101f990600435610ad9565b63334bd91960e11b5f5260045ffd5b3461011f57604036600319011261011f576101f96004356105d06108d8565b906105e96101ef825f525f602052600160405f20015490565b610a51565b3461011f57602036600319011261011f5760206106186004355f525f602052600160405f20015490565b604051908152f35b3461011f57602036600319011261011f576106396108c2565b61064161095b565b6001600160a01b03811690811561032e573b1561069557805f52600560205260405f20600160ff198254161790557fa77e7c594c11a0d5d9d8e6a9132ac0db912dc0f34f5fb7d94860fe38d16410bd5f80a2005b6322a2d07b60e21b5f5260045260245ffd5b3461011f575f36600319011261011f5760206040517fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b268152f35b3461011f575f36600319011261011f576002545f905f5b818110610829575061070982610910565b60405192601f909101601f191683019067ffffffffffffffff8211848310176108155761073b91604052808452610910565b602083019190601f19013683375f805b82821061079f578385604051918291602083019060208452518091526040830191905f5b81811061077d575050500390f35b82516001600160a01b031684528594506020938401939092019160010161076f565b6107a882610928565b6001600160a01b03165f9081526005602052604090205460ff166107d2575b50906001019061074b565b8551821015610801576001600160a01b0316600582901b8601602001526001906107fb906108ee565b906107c7565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b61083281610928565b6001600160a01b03165f9081526005602052604090205460ff16905061085b575b6001016106f8565b916108676001916108ee565b929050610853565b3461011f57602036600319011261011f576004359063ffffffff60e01b821680920361011f57602091637965db0b60e01b81149081156108b1575b5015158152f35b6301ffc9a760e01b149050836108aa565b600435906001600160a01b038216820361011f57565b602435906001600160a01b038216820361011f57565b5f1981146108fc5760010190565b634e487b7160e01b5f52601160045260245ffd5b67ffffffffffffffff81116108155760051b60200190565b610933906002610bd1565b905460039190911b1c5f818152600460205260409020546001600160a01b0391821692911690565b335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff161561099357565b63e2517d3f60e01b5f52336004525f60245260445ffd5b335f9081527f3c1b1854ab1360abbb06c8d4c6b2672d4b8cedc5eff522ab19e51d5cb8fdbd46602052604090205460ff16156109e257565b63e2517d3f60e01b5f52336004527fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b2660245260445ffd5b5f8181526020818152604080832033845290915290205460ff1615610a3b5750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f818152602081815260408083206001600160a01b038616845290915290205460ff16610ad3575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615610ad3575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff60015416610b6557565b63d93c066560e01b5f5260045ffd5b6001600160a01b039081165f818152600460205260409020919092169055610b9d906002610be6565b90565b805f52600460205260405f205480155f14610bc957505f52600360205260405f20541515905f90565b600192909150565b8054821015610801575f5260205f2001905f90565b5f828152600182016020526040902054610ad357805490680100000000000000008210156108155782610c39610c23846001809601855584610bd1565b819391549060031b91821b915f19901b19161790565b90558054925f520160205260405f2055600190565b5f818152600360205260409020548015610ad3575f1981018181116108fc576002545f198101919082116108fc57818103610cd5575b5050506002548015610cc1575f1901610c9e816002610bd1565b8154905f199060031b1b191690556002555f5260036020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b610cf7610ce6610c23936002610bd1565b90549060031b1c9283926002610bd1565b90555f52600360205260405f20555f8080610c8456fea2646970667358221220666523c889e23108c616c8707deaaca246b42d0fcc93f7f83347b76efc686b4b64736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c1b1854ab1360abbb06c8d4c6b2672d4b8cedc5eff522ab19e51d5cb8fdbd46ad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb500000000000000000000000060163d6406503426e712ed6c507137229552756d000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", - "nonce": "0x3", + "input": "0x000000000000000000000000000000000000000000000000000000000000000760e0346100ea57601f61115438819003918201601f19168301916001600160401b038311848410176100ee5780849260409485528339810103126100ea57610052602061004b83610102565b9201610102565b30608052906001600160a01b038116156100db5760a0526001600160a01b038116156100db5760c05260405161103d9081610117823960805181610125015260a051818181605a0152818161041c015281816106ab015281816108c901528181610a2801528181610bdf01528181610c450152610efd015260c05181818160a201526105830152f35b63d92e233d60e01b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036100ea5756fe60806040526004361015610011575f80fd5b5f3560e01c8063134396c21461018a5780631cff79cd146100d15780638988333b1461008d5763e08b7b9f14610045575f80fd5b34610089575f366003190112610089576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b5f80fd5b34610089575f366003190112610089576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b6040366003190112610089576100e56101dd565b60243567ffffffffffffffff8111610089573660238201121561008957806004013567ffffffffffffffff811161008957366024828401011161008957307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461017b576101779260246101639301906102ab565b60405191829160208352602083019061021d565b0390f35b633954108560e21b5f5260045ffd5b346100895760a0366003190112610089576101a36101dd565b506101ac6101f3565b5060443567ffffffffffffffff811161008957604090600319903603011261008957633954108560e21b5f5260045ffd5b600435906001600160a01b038216820361008957565b602435906001600160a01b038216820361008957565b35906001600160a01b038216820361008957565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b6040810190811067ffffffffffffffff82111761025d57604052565b634e487b7160e01b5f52604160045260245ffd5b90601f8019910116810190811067ffffffffffffffff82111761025d57604052565b67ffffffffffffffff811161025d5760051b60200190565b92905f92806004116100895781356001600160e01b0319166309a1cb6160e11b146102df576311fa59f360e11b8452600484fd5b919291810160a08282036003190112610089576102fe60048301610209565b9061030b60248401610209565b95604484013567ffffffffffffffff81116100895784019160408382036003190112610089576040519261033e84610241565b600481013567ffffffffffffffff81116100895760049082010182601f820112156100895780359061036f82610293565b9161037d6040519384610271565b80835260208084019160051b8301019185831161008957602001905b828210610f47575050508452602481013567ffffffffffffffff81116100895760049101019080601f83011215610089578135906103d682610293565b926103e46040519485610271565b82845260208085019360051b82010191821161008957602001915b818310610f2d5750505060208301526001600160a01b03908116907f0000000000000000000000000000000000000000000000000000000000000000168103610ee95750805151600281108015610edf575b610ecd576020820151515f19820190828211610eb9578103610eaa5782516001600160a01b039061048190610f5f565b5184519116916001600160a01b039161049a9190610f80565b51169060018060a01b0385161490811591610e96575b50610e72575f5b818110610e235750505f5b6020820151805182101561053557816104da91610f80565b5160020b60018114158061052a575b8061051f575b80610514575b61050257506001016104c2565b63b9178e0160e01b5f5260045260245ffd5b5060c88114156104f5565b5060648114156104ef565b5060328114156104e9565b50509193949092946040519461054a86610241565b5f80875260208701526001600160a01b038516158015610e12575b8015610dfd575b610ddf576064810135158015610dd3575b610dc4577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b156100895760405163066b3c5360e41b81526001600160a01b0387166004820152905f90829060249082905afa8015610db957610da4575b506001600160a01b036105f6610fa1565b166001600160a01b03861614610d95576001600160a01b03610616610fa1565b166001600160a01b03841603610d86576040516370a0823160e01b81523060048201526020816024816001600160a01b0388165afa908115610d49578891610d54575b5086526040516370a0823160e01b81523060048201526020816024816001600160a01b038a165afa908115610d49578891610d17575b50602087015260405163095ea7b360e01b885260018060a01b037f00000000000000000000000000000000000000000000000000000000000000001660045260648201356024526020886044818060018060a01b038b165af1906001895114821615610cfe575b60405215610bc8575b6107098451610f5f565b51604051906bffffffffffffffffffffffff199060601b16602082015260148152610735603482610271565b9487955b60208601518051881015610818578761075191610f80565b516040519060e81b60208201526003815261076d602382610271565b86516001890190818a1161080457926020928c61078f6107fc94600197610f80565b5191858060405192818401956bffffffffffffffffffffffff199060601b168652601484526107bf603485610271565b60405198878a985191829101848a015e870190828201868152815193849201905e0101918252518092825e018c815203601f198101835282610271565b960195610739565b634e487b7160e01b8c52601160045260248cfd5b509196945094509590956040519060a0820182811067ffffffffffffffff821117610bb4576040528152602061089b81830192308452604081019363ffffffff85526060820160648b01358152608083019060848c01358252604051968795869563c04b8d5960e01b87528860048801525160a0602488015260c487019061021d565b9360018060a01b0390511660448601525160648501525160848401525160a483015203818560018060a01b037f0000000000000000000000000000000000000000000000000000000000000000165af18015610aa657610b85575b506040516370a0823160e01b81523060048201526020816024816001600160a01b0387165afa908115610aa6578291610b53575b506040516370a0823160e01b8152306004820152906020826024816001600160a01b038a165afa918215610b48578392610b12575b50610971610979926020870151610f94565b945190610f94565b9460848101358610610af75750604051633325e1df60e01b8152602081600481305afa908115610aa6578291610ab5575b506001600160a01b0316803b15610ab157604051632530943760e01b81526001600160a01b038616600482015260248101859052604481018790529082908290606490829084905af18015610aa657610a8e575b5050604080516001600160a01b0394851681529184166020830152810191909152606081018390527f00000000000000000000000000000000000000000000000000000000000000009091169030907fd6d4f5681c246c9f42c203e287975af1601f8df8035a9251f79aab5c8f09e2f890608090a360405190602082015260208152610a8b604082610271565b90565b610a99828092610271565b610aa357806109fe565b80fd5b6040513d84823e3d90fd5b5080fd5b90506020813d602011610aef575b81610ad060209383610271565b81010312610ab157516001600160a01b0381168103610ab1575f6109aa565b3d9150610ac3565b630583371760e31b8252600486905260840135602452604490fd5b91506020823d602011610b40575b81610b2d60209383610271565b810103126100895790519061097161095f565b3d9150610b20565b6040513d85823e3d90fd5b90506020813d602011610b7d575b81610b6e60209383610271565b8101031261008957515f61092a565b3d9150610b61565b6020813d602011610bac575b81610b9e60209383610271565b8101031261008957516108f6565b3d9150610b91565b634e487b7160e01b84526041600452602484fd5b60405163095ea7b360e01b88526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660045260248990526020908990604490829081908b165af1906001895114821615610cdd575b60405215610c975760405163095ea7b360e01b88526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660045260648301356024526020908990604490829081908b165af1906001895114821615610cb3575b6040526106ff575b635274afe760e01b87526001600160a01b038516600452602487fd5b906001811516610cd4573d156001600160a01b0388163b1515161690610c8f565b503d88823e3d90fd5b906001811516610cd4573d156001600160a01b0388163b1515161690610c26565b3d156001600160a01b0388163b151516909116906106f6565b90506020813d602011610d41575b81610d3260209383610271565b8101031261008957515f61068f565b3d9150610d25565b6040513d8a823e3d90fd5b90506020813d602011610d7e575b81610d6f60209383610271565b8101031261008957515f610659565b3d9150610d62565b634847234360e01b8752600487fd5b6326ec736f60e11b8752600487fd5b610db19197505f90610271565b5f955f6105e5565b6040513d5f823e3d90fd5b631f2a200560e01b5f5260045ffd5b5060848101351561057d565b632edfb9f560e21b5f9081526001600160a01b038616600452602490fd5b506001600160a01b038581169084161461056c565b506001600160a01b03831615610565565b82516001600160a01b0390610e39908390610f80565b511615610e48576001016104b7565b91516001600160a01b0392610e5e925090610f80565b5116632edfb9f560e21b5f5260045260245ffd5b630e084dd560e11b5f9081526001600160a01b038085166004528816602452604490fd5b6001600160a01b038916141590505f6104b0565b6316b0de1160e01b5f5260045ffd5b634e487b7160e01b5f52601160045260245ffd5b630f34c83160e21b5f5260045260245ffd5b5060058111610451565b630620618d60e11b5f9081526004919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316602452604490fd5b82358060020b8103610089578152602092830192016103ff565b60208091610f5484610209565b815201910190610399565b805115610f6c5760200190565b634e487b7160e01b5f52603260045260245ffd5b8051821015610f6c5760209160051b010190565b91908203918211610eb957565b60405163cdf456e160e01b8152602081600481305afa908115610db9575f91610fc8575090565b90506020813d602011610fff575b81610fe360209383610271565b8101031261008957516001600160a01b03811681036100895790565b3d9150610fd656fea264697066735822122074ff1e562f894526d2b823995047ecc98da5834820ad97ed62b65098b0e8c5f664736f6c634300081c0033000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a50000000000000000000000002c61dc81bc40389ff11ce68e78e93a3f75e41b9c", + "nonce": "0x32", "chainId": "0x2105" }, "additionalContracts": [], "isFixedGasLimit": false }, { - "hash": "0x3d741471d6fee67090289f518710f0e8a3f0fb6e4df6d16760d0ffcb8f0d892f", - "transactionType": "CREATE2", - "contractName": "YieldSeekerFeeTracker", - "contractAddress": "0xe128c4962c7d6b73197e04640b15896fcfaca7d5", - "function": null, - "arguments": [ - "0x60163d6406503426E712eD6c507137229552756D" - ], - "transaction": { - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0x13c025", - "value": "0x0", - "input": "0x000000000000000000000000000000000000000000000000000000000000000660803461007d57601f610fb438819003918201601f19168301916001600160401b038311848410176100815780849260209460405283398101031261007d57516001600160a01b03811680820361007d571561006e5761005e90610095565b50604051610e75908161011f8239f35b63d92e233d60e01b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b0381165f9081525f516020610f945f395f51905f52602052604090205460ff16610119576001600160a01b03165f8181525f516020610f945f395f51905f5260205260408120805460ff191660011790553391907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610895575080630e19a3121461083857806310a3bc081461035e5780631aea105e146107d457806322bf55ef146107795780632338e72914610741578063248a9ca314610717578063253094371461070057806327bca7fa146106b05780632f2ff15d14610673578063328467a714610657578063331115c4146105ed57806336568abe146105a95780633c3eeafa146105595780633d2dca71146105005780636468af341461041257806378e68025146103ae57806386e7f6bc1461035e57806388c7fff3146103415780638931e8281461025b5780638dce48671461022357806391d14854146101db578063a217fddf146101c1578063c415b95c14610199578063c7027631146101825763d547741f1461013a575f80fd5b3461017e57604036600319011261017e5761017c6004356101596108fe565b90610177610172825f525f602052600160405f20015490565b610c8e565b610d4e565b005b5f80fd5b3461017e5761017c61019336610914565b91610a63565b3461017e575f36600319011261017e576002546040516001600160a01b039091168152602090f35b3461017e575f36600319011261017e5760206040515f8152f35b3461017e57604036600319011261017e576101f46108fe565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461017e57602036600319011261017e576001600160a01b036102446108e8565b165f526004602052602060405f2054604051908152f35b3461017e57602036600319011261017e576001600160a01b0361027c6108e8565b16805f52600360205260405f2054815f52600460205260405f2054604051926378e6802560e01b84526004840152602083602481305afa908115610336575f916102d7575b6060935060405192835260208301526040820152f35b905060203d60201161032f575b601f8101601f1916840167ffffffffffffffff81118582101761031b5760209185916040528101031261017e5760609251906102c1565b634e487b7160e01b5f52604160045260245ffd5b503d6102e4565b6040513d5f823e3d90fd5b3461017e575f36600319011261017e576020600154604051908152f35b3461017e57604036600319011261017e576103776108e8565b61037f6108fe565b6001600160a01b039182165f908152600760209081526040808320949093168252928352819020549051908152f35b3461017e57602036600319011261017e576001600160a01b036103cf6108e8565b16805f52600360205260405f2054905f52600460205260405f2054908181115f146104085760209161040091610990565b604051908152f35b505060205f610400565b3461017e57604036600319011261017e5760043561042e6108fe565b335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff16156104e95761138882116104da576001600160a01b031680156104cb57816040917fe125ae54d7ba2b06e6f44852861516acb2dd2692cf41fb127fa03252f15b334e93600155806bffffffffffffffffffffffff60a01b600254161760025582519182526020820152a1005b63d92e233d60e01b5f5260045ffd5b630adad23360e31b5f5260045ffd5b63e2517d3f60e01b5f52336004525f60245260445ffd5b3461017e57604036600319011261017e576105196108e8565b61271061052a60015460243561093e565b0490335f52600760205260405f209060018060a01b03165f5260205261055560405f20918254610983565b9055005b3461017e57604036600319011261017e576105726108e8565b61057a6108fe565b6001600160a01b039182165f908152600660209081526040808320949093168252928352819020549051908152f35b3461017e57604036600319011261017e576105c26108fe565b336001600160a01b038216036105de5761017c90600435610d4e565b63334bd91960e11b5f5260045ffd5b3461017e57604036600319011261017e5760406106086108e8565b6106106108fe565b6001600160a01b039182165f818152600560209081528582209490931680825293835284812054918152600683528481209381529282529183902054835192835290820152f35b3461017e575f36600319011261017e5760206040516113888152f35b3461017e57604036600319011261017e5761017c6004356106926108fe565b906106ab610172825f525f602052600160405f20015490565b610cc6565b3461017e57604036600319011261017e576106c96108e8565b6106d16108fe565b6001600160a01b039182165f908152600560209081526040808320949093168252928352819020549051908152f35b3461017e5761017c61071136610914565b9161099d565b3461017e57602036600319011261017e5760206104006004355f525f602052600160405f20015490565b3461017e57602036600319011261017e576001600160a01b036107626108e8565b165f526003602052602060405f2054604051908152f35b3461017e57602036600319011261017e57600435335f52600460205260405f206107a4828254610983565b90556040519081527f075a2720282fdf622141dae0b048ef90a21a7e57c134c76912d19d006b3b3f6f60203392a2005b3461017e576107e236610914565b9190335f52600560205260405f2060018060a01b0383165f5260205261080d60405f20918254610983565b9055335f52600660205260405f209060018060a01b03165f5260205261055560405f20918254610983565b3461017e57602036600319011261017e5760043561271061085b6001548361093e565b04335f52600360205260405f20610873828254610983565b905560405191825260208201525f516020610e205f395f51905f5260403392a2005b3461017e57602036600319011261017e576004359063ffffffff60e01b821680920361017e57602091637965db0b60e01b81149081156108d7575b5015158152f35b6301ffc9a760e01b149050836108d0565b600435906001600160a01b038216820361017e57565b602435906001600160a01b038216820361017e57565b606090600319011261017e576004356001600160a01b038116810361017e57906024359060443590565b8181029291811591840414171561095157565b634e487b7160e01b5f52601160045260245ffd5b811561096f570490565b634e487b7160e01b5f52601260045260245ffd5b9190820180921161095157565b9190820391821161095157565b8115610a5e57335f52600760205260405f2060018060a01b0382165f5260205260405f2054806109ce575b50505050565b610a1293610a0d9282851115610a53576109e88380610990565b90335f52600760205260405f209060018060a01b03165f5260205260405f205561093e565b610965565b335f52600360205260405f20610a29828254610983565b90556040519080825260208201525f516020610e205f395f51905f5260403392a25f8080806109c8565b6109e8858094610990565b505050565b91908015610a5e57335f8181526006602090815260408083206001600160a01b03881680855290835281842054858552600584528285208286528452828520549585526007845282852091855292528220549294909392909190839080610c04575b50841015610b61575083151580610b58575b610b22575b50505050335f52600560205260405f2060018060a01b0382165f526020525f6040812055335f52600660205260405f209060018060a01b03165f526020525f6040812055565b610b2f92610a0d9161093e565b818111610b3e575b8080610adc565b610b5191610b4b91610990565b33610dce565b5f80610b37565b50821515610ad7565b839293610b71575b505050505050565b84610ba192610b92610b8a86610a0d89610bc59b61093e565b938492610990565b818111610bf0575b5050610990565b335f52600560205260405f2060018060a01b0386165f5260205260405f2055610990565b90335f52600660205260405f209060018060a01b03165f5260205260405f20555f8080808080610b69565b610bfd91610b4b91610990565b815f610b9a565b610c449250610a0d9080831115610c8357610c1f8180610990565b335f52600760205260405f2060018060a01b038b165f5260205260405f20558461093e565b335f52600360205260405f20610c5b828254610983565b90556040518181528160208201525f516020610e205f395f51905f5260403392a2825f610ac5565b610c1f838092610990565b5f8181526020818152604080832033845290915290205460ff1615610cb05750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f818152602081815260408083206001600160a01b038616845290915290205460ff16610d48575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615610d48575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b9060405f516020610e205f395f51905f5291612710610def6001548361093e565b049360018060a01b031693845f526003602052825f20610e10828254610983565b905582519182526020820152a256fe4cf3d44e1da794302b8d37b1bd4a8dbdc04caf6afe8cef3bdeda69040f09c0dba2646970667358221220d7fb7cb793ab2254136fbbfb6ca00bddf4f050d2d7230030166238e9e8cfd95864736f6c634300081c0033ad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb500000000000000000000000060163d6406503426e712ed6c507137229552756d", - "nonce": "0x4", - "chainId": "0x2105" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0x8cd9c75b35a9ad0d1479c7668c4f57fd75d738c6924d19aec402a6cce78573b5", - "transactionType": "CREATE2", - "contractName": "YieldSeekerERC4626Adapter", - "contractAddress": "0x905cd24370018befb6c648420d35dfeba9e62602", - "function": null, - "arguments": null, - "transaction": { - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0xb7a21", - "value": "0x0", - "input": "0x000000000000000000000000000000000000000000000000000000000000000660a08060405234602157306080526108db908161002682396080518160ab0152f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631cff79cd1461004a5780632e1a7d4d14610045578063658ce9d9146100455763b6b55f2514610045575f80fd5b61012a565b6040366003190112610126576004356001600160a01b0381168103610126576024359067ffffffffffffffff821161012657366023830112156101265781600401359167ffffffffffffffff831161012657366024848301011161012657307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146101175760209260409260246100eb930190610180565b815192839181835280519182918282860152018484015e5f828201840152601f01601f19168101030190f35b633954108560e21b5f5260045ffd5b5f80fd5b3461012657602036600319011261012657633954108560e21b5f5260045ffd5b90601f8019910116810190811067ffffffffffffffff82111761016c57604052565b634e487b7160e01b5f52604160045260245ffd5b90915f9281600411806101265781356001600160e01b03191663b6b55f2560e01b81146104ea5763658ce9d960e01b811461039f57632e1a7d4d60e01b146101d1576311fa59f360e11b8552600485fd5b90919293506101265780600460209201928391010312610126576040516338d52e0f60e01b81526001600160a01b03831692913590602081600481875afa801561032257610226915f91610370575b506107b5565b80156103615760405192635d043b2960e11b84528160048501523060248501523060448501526020846064815f855af1938415610322575f9461032d575b506040518281528460208201527f91fb9d98b786c57d74c099ccd2beca1739e9f6a81fb49001ca465c4b7591bbe260403092a36001600160a01b036102a761083f565b1691823b156101265760405163c702763160e01b81526001600160a01b03919091166004820152602481019190915260448101839052905f908290606490829084905af1801561032257610312575b506040519060208201526020815261030f60408261014a565b90565b5f61031c9161014a565b5f6102f6565b6040513d5f823e3d90fd5b9093506020813d602011610359575b816103496020938361014a565b810103126101265751925f610264565b3d915061033c565b631f2a200560e01b5f5260045ffd5b610392915060203d602011610398575b61038a818361014a565b81019061050a565b5f610220565b503d610380565b5090919293506101265780600460209201928391010312610126576040516338d52e0f60e01b8152903591906020816004816001600160a01b0386165afa908115610322575f916104cb575b50821580156104c0575b6104ad576040516370a0823160e01b815230600482015290602090829060249082906001600160a01b03165afa908115610322575f9161047b575b508281029281840414901517156104675761271061044f920490610529565b6040519060208201526020815261030f60408261014a565b634e487b7160e01b5f52601160045260245ffd5b90506020813d6020116104a5575b816104966020938361014a565b8101031261012657515f610430565b3d9150610489565b8263aa31867360e01b5f5260045260245ffd5b5061271083116103f5565b6104e4915060203d6020116103985761038a818361014a565b5f6103eb565b50506020919350600481019384910103126101265761044f913590610529565b9081602091031261012657516001600160a01b03811681036101265790565b6040516338d52e0f60e01b81526001600160a01b03821693929190602081600481885afa801561032257610563915f9161037057506107b5565b8115610361576040516338d52e0f60e01b8152602081600481885afa908115610322575f91610796575b5060018060a01b031660405163095ea7b360e01b5f52856004528360245260205f60448180865af19060015f5114821615610787575b604052156106d2575b50604051636e553f6560e01b815260048101839052306024820152936020856044815f855af1948515610322575f9561069e575b506040518381528560208201527ff5681f9d0db1b911ac18ee83d515a1cf1051853a9eae418316a2fdf7dea427c560403092a3836001600160a01b0361064461083f565b16803b1561012657604051630d75082f60e11b81526001600160a01b0393909316600484015260248301939093526044820152905f908290606490829084905af18015610322576106925750565b5f61069c9161014a565b565b9094506020813d6020116106ca575b816106ba6020938361014a565b810103126101265751935f610600565b3d91506106ad565b60405163095ea7b360e01b5f52856004525f60245260205f60448180865af19060015f511482161561076f575b6040521561073c5760405163095ea7b360e01b5f52856004528360245260205f60448180865af19060015f511482161561074e575b6040526105cc575b635274afe760e01b5f5260045260245ffd5b90600181151661076657823b15153d15161690610734565b503d5f823e3d90fd5b90600181151661076657823b15153d151616906106ff565b90823b15153d151616906105c3565b6107af915060203d6020116103985761038a818361014a565b5f61058d565b60405163cdf456e160e01b8152602081600481305afa908115610322575f916107fd575b506001600160a01b039081169116036107ee57565b6366856dc760e11b5f5260045ffd5b90506020813d602011610837575b816108186020938361014a565b8101031261012657516001600160a01b0381168103610126575f6107d9565b3d915061080b565b604051633325e1df60e01b8152602081600481305afa908115610322575f91610866575090565b90506020813d60201161089d575b816108816020938361014a565b8101031261012657516001600160a01b03811681036101265790565b3d915061087456fea2646970667358221220d1486514a3c083e8d70cdf9832750fb7548b38ca6d94d1b343869819c61b6de464736f6c634300081c0033", - "nonce": "0x5", - "chainId": "0x2105" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0xfc911b5f981c72ba5b4e0d3ffe9fd0f30a1bcc5de944e6a9fdc8990c9654c58c", - "transactionType": "CREATE2", - "contractName": "YieldSeekerMerklAdapter", - "contractAddress": "0xd28d02f82a1d735c973b5b24c30ed7a56839fb96", - "function": null, - "arguments": null, - "transaction": { - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0xf2dbd", - "value": "0x0", - "input": "0x000000000000000000000000000000000000000000000000000000000000000660a0806040523460225730608052610b4f90816100278239608051816101360152f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631cff79cd146100d7576371ee95c01461002f575f80fd5b346100d35760803660031901126100d3576004356001600160401b0381116100d35761005f9036906004016101b1565b50506024356001600160401b0381116100d3576100809036906004016101b1565b50506044356001600160401b0381116100d3576100a19036906004016101b1565b50506064356001600160401b0381116100d3576100c29036906004016101b1565b5050633954108560e21b5f5260045ffd5b5f80fd5b60403660031901126100d3576004356001600160a01b03811681036100d357602435906001600160401b0382116100d357366023830112156100d3578160040135916001600160401b0383116100d35736602484830101116100d357307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146101a257602092604092602461017693019061029b565b815192839181835280519182918282860152018484015e5f828201840152601f01601f19168101030190f35b633954108560e21b5f5260045ffd5b9181601f840112156100d3578235916001600160401b0383116100d3576020808501948460051b0101116100d357565b90601f801991011681019081106001600160401b0382111761020257604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b0381116102025760051b60200190565b9080601f830112156100d35781359061024582610216565b9261025360405194856101e1565b82845260208085019360051b8201019182116100d357602001915b81831061027b5750505090565b82356001600160a01b03811681036100d35781526020928301920161026e565b905f92806004116100d35781356001600160e01b0319166301c7ba5760e61b146102ce576311fa59f360e11b8452600484fd5b810191608082840360031901126100d35760048201356001600160401b0381116100d3578360046103019285010161022d565b60248301356001600160401b0381116100d3578460046103239286010161022d565b60448401356001600160401b0381116100d357840193856023860112156100d35760048501359061035382610216565b9561036160405197886101e1565b8287526020870160206004829560051b84010101918983116100d357602401905b828210610a1d575050506064810135906001600160401b0382116100d3570190866023830112156100d3576004820135916103bc83610216565b976103ca604051998a6101e1565b838952602089019160206004849660051b83010101908282116100d35760248101935b8285106109995750505050508251965f9661040789610216565b9661041560405198896101e1565b898852601f196104248b610216565b013660208a01375f5b8a8110610926575061043e89610216565b9761044c604051998a6101e1565b898952601f1961045b8b610216565b013660208b013761046b8a610216565b9a6104796040519c8d6101e1565b8a8c52601f196104888c610216565b013660208e01375f915f5b828110610858575050505060018060a01b031694853b156100d3579060206104ef6104dd9896959493604051998a986301c7ba5760e61b8a52608060048b015260848a0190610a77565b8881036003190160248a015290610a77565b8681036003190160448801529151808352910192905f5b81811061083f5750505060031984830301606485015251808252602082019160208260051b82010193925f915b8383106107e357505050505091815f81819503925af180156107d8576107c3575b5060405163cdf456e160e01b8152602081600481305afa9081156107b8578591610772575b506001600160a01b031692845b8381106105c857505050505060405190602082018281106001600160401b038211176105b457604052815290565b634e487b7160e01b82526041600452602482fd5b6001600160a01b036105da8284610a2d565b516040516370a0823160e01b81523060048201529116602082602481845afa918215610767578892610734575b506106128386610a2d565b5180830392808411610720570361062e575b5050600101610586565b8087036106b157506001600160a01b03610646610ab3565b1690813b156106ad57879160248392604051948593849263070cd18960e11b845260048401525af180156106a257908791610689575b50506001905b905f610624565b81610693916101e1565b61069e57855f61067c565b8580fd5b6040513d89823e3d90fd5b8780fd5b906001600160a01b036106c2610ab3565b1691823b1561071c579060448992836040519586948593633d2dca7160e01b8552600485015260248401525af180156106a257908791610707575b5050600190610682565b81610711916101e1565b61069e57855f6106fd565b8880fd5b634e487b7160e01b8a52601160045260248afd5b9091506020813d821161075f575b8161074f602093836101e1565b810103126100d35751905f610607565b3d9150610742565b6040513d8a823e3d90fd5b90506020813d6020116107b0575b8161078d602093836101e1565b810103126107ac57516001600160a01b03811681036107ac575f610579565b8480fd5b3d9150610780565b6040513d87823e3d90fd5b6107d09194505f906101e1565b5f925f610554565b6040513d5f823e3d90fd5b919395509193601f19828203018352855190602080835192838152019201905f905b8082106108275750505060208060019297019301930190928795949293610533565b90919260208060019286518152019401920190610805565b8251855288965060209485019490920191600101610506565b6108628183610a2d565b51610870575b600101610493565b928d610890826001600160a01b03610888888f610a2d565b511692610a2d565b52602460206001600160a01b036108a7878e610a2d565b5116604051928380926370a0823160e01b82523060048301525afa9081156107d8578d905f926108f2575b50916108ea916108e482600195610a2d565b52610a55565b939050610868565b9150506020813d821161091e575b8161090d602093836101e1565b810103126100d357518c60016108d2565b3d9150610900565b5f5f5b82811061095a575b5015610940575b60010161042d565b98610952600191826108e48d8d610a2d565b999050610938565b6001600160a01b0361096c848b610a2d565b51166001600160a01b03610980838c610a2d565b51161461098f57600101610929565b505060015f610931565b84356001600160401b0381116100d35760049083010184603f820112156100d3576020810135906109c982610216565b916109d760405193846101e1565b8083526020808085019260051b84010101918783116100d357604001905b828210610a0d575050508152602094850194016103ed565b81358152602091820191016109f5565b8135815260209182019101610382565b8051821015610a415760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b5f198114610a635760010190565b634e487b7160e01b5f52601160045260245ffd5b90602080835192838152019201905f5b818110610a945750505090565b82516001600160a01b0316845260209384019390920191600101610a87565b604051633325e1df60e01b8152602081600481305afa9081156107d8575f91610ada575090565b90506020813d602011610b11575b81610af5602093836101e1565b810103126100d357516001600160a01b03811681036100d35790565b3d9150610ae856fea26469706673582212202260a1140ccde37a02e2b5497e222cd0fdf0cfe2c01c382d3e259d11e0e7e3f964736f6c634300081c0033", - "nonce": "0x6", - "chainId": "0x2105" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0x4dfc82a3f687b63a8420921951ba11cb4f4cf0b4a56d93f4ece4af9bec899235", - "transactionType": "CREATE2", - "contractName": "YieldSeekerZeroXAdapter", - "contractAddress": "0x15a8067f0b38e29f7fcffb93f85c585748d49d82", - "function": null, - "arguments": [ - "0x0000000000001fF3684f28c67538d4D072C22734" - ], - "transaction": { - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "gas": "0xc07f4", - "value": "0x0", - "input": "0x000000000000000000000000000000000000000000000000000000000000000660c03461009257601f6109f838819003918201601f19168301916001600160401b038311848410176100965780849260209460405283398101031261009257516001600160a01b0381168082036100925730608052156100835760a05260405161094d90816100ab82396080518161010b015260a05181818160a201526107520152f35b631440bbc360e11b5f5260045ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f3560e01c80631cff79cd146100d1578063227515931461008d5763e2450d7c1461003a575f80fd5b60c03660031901126100895761004e610164565b5061005761017a565b5060843567ffffffffffffffff811161008957610078903690600401610190565b5050633954108560e21b5f5260045ffd5b5f80fd5b34610089575f366003190112610089576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b6040366003190112610089576100e5610164565b60243567ffffffffffffffff811161008957610105903690600401610190565b909190307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461015557610151926101459261024e565b604051918291826101be565b0390f35b633954108560e21b5f5260045ffd5b600435906001600160a01b038216820361008957565b602435906001600160a01b038216820361008957565b9181601f840112156100895782359167ffffffffffffffff8311610089576020838186019501011161008957565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b35906001600160a01b038216820361008957565b90601f8019910116810190811067ffffffffffffffff82111761021e57604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff811161021e57601f01601f191660200190565b5f92806004116100895782356001600160e01b031916633891435f60e21b14610280576311fa59f360e11b8452600484fd5b9192509082019060c08383036003190112610089576102a1600484016101e8565b916102ae602485016101e8565b9160448501359360648601359560848101359067ffffffffffffffff8211610089570190836023830112156100895760048201356102eb81610232565b926102f960405194856101fc565b81845260208401956024828401011161008957815f9260246020930188378401015260405163cdf456e160e01b81526001600160a01b03918216959091169390602081600481305afa9081156104fe575f916108b4575b506001600160a01b031684036108a5578515801561089d575b61088e5773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8514958615610741578080471061072b57505b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee85149081156106c85747925b881561065d575f91829147965b5191885af13d15610655573d906103d982610232565b916103e760405193846101fc565b82523d5f602084013e5b156106315750156105ce5747955b15610561576104126104189247906108f6565b956108f6565b9480861061054b575060405191838352602083015283604083015284606083015260018060a01b0316907fd6d4f5681c246c9f42c203e287975af1601f8df8035a9251f79aab5c8f09e2f860803092a3604051633325e1df60e01b8152602081600481305afa9081156104fe575f91610509575b506001600160a01b031691823b156100895760645f92836040519586948593632530943760e01b8552600485015260248401528760448401525af180156104fe576104ee575b50604051906020820152602081526104eb6040826101fc565b90565b5f6104f8916101fc565b5f6104d2565b6040513d5f823e3d90fd5b90506020813d602011610543575b81610524602093836101fc565b8101031261008957516001600160a01b0381168103610089575f61048c565b3d9150610517565b85630583371760e31b5f5260045260245260445ffd5b6040516370a0823160e01b8152306004820152602081602481895afa9081156104fe575f9161059a575b506104189261041291906108f6565b90506020813d6020116105c6575b816105b5602093836101fc565b81010312610089575161041861058b565b3d91506105a8565b6040516370a0823160e01b8152306004820152602081602481885afa9081156104fe575f916105ff575b50956103ff565b90506020813d602011610629575b8161061a602093836101fc565b8101031261008957515f6105f8565b3d915061060d565b604051600162605a6b60e01b0319815290819061065190600483016101be565b0390fd5b6060906103f1565b906040516370a0823160e01b81523060048201526020816024818c5afa9081156104fe575f91610694575b50905f928392966103c3565b9190506020823d6020116106c0575b816106b0602093836101fc565b810103126100895790515f610688565b3d91506106a3565b6040516370a0823160e01b81523060048201526020816024818a5afa9081156104fe575f916106f9575b50926103b6565b90506020813d602011610723575b81610714602093836101fc565b8101031261008957515f6106f2565b3d9150610707565b47633ebbc33760e01b5f5260045260245260445ffd5b60405163095ea7b360e01b5f9081527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166004819052602484905290929091602084604481808d5af19060015f511482161561087f575b604052156107b0575b5050610395565b60405163095ea7b360e01b5f52826004525f60245260205f604481808d5af19060015f5114821615610867575b60405215610854576040519163095ea7b360e01b5f5260045260245260205f604481808b5af19060015f5114821615610833575b60405215610820575f806107a9565b85635274afe760e01b5f5260045260245ffd5b90600181151661084b57873b15153d15161690610811565b503d5f823e3d90fd5b87635274afe760e01b5f5260045260245ffd5b90600181151661084b57893b15153d151616906107dd565b90893b15153d151616906107a0565b631f2a200560e01b5f5260045ffd5b508615610369565b6366856dc760e11b5f5260045ffd5b90506020813d6020116108ee575b816108cf602093836101fc565b8101031261008957516001600160a01b0381168103610089575f610350565b3d91506108c2565b9190820391821161090357565b634e487b7160e01b5f52601160045260245ffdfea2646970667358221220b05c6d7b54e9e2a1a3e158ce7d4ffda01910fc407c3641a90e0f02dd4dac7eda64736f6c634300081c00330000000000000000000000000000000000001ff3684f28c67538d4d072c22734", - "nonce": "0x7", - "chainId": "0x2105" - }, - "additionalContracts": [], - "isFixedGasLimit": false - }, - { - "hash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", + "hash": "0x0ec9b49ba69c03c671a197969a9e377e4c2df7ceefd6246b46b3d65300e15af3", "transactionType": "CALL", - "contractName": "YieldSeekerAdminTimelock", - "contractAddress": "0x60163d6406503426e712ed6c507137229552756d", + "contractName": null, + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", "function": "scheduleBatch(address[],uint256[],bytes[],bytes32,bytes32,uint256)", "arguments": [ - "[0x23AAFAeb5B78816dBCf20D503A73Cd9750A21d63, 0x23AAFAeb5B78816dBCf20D503A73Cd9750A21d63, 0x23AAFAeb5B78816dBCf20D503A73Cd9750A21d63, 0x81f17748B0abE955790346B904f6B78E67594ed0, 0x81f17748B0abE955790346B904f6B78E67594ed0, 0x81f17748B0abE955790346B904f6B78E67594ed0]", - "[0, 0, 0, 0, 0, 0]", - "[0xc68e00fb0000000000000000000000000fe7ff9421839bd2cf4d0d959450f57491ea1109, 0x5b34b82300000000000000000000000081f17748b0abe955790346b904f6b78e67594ed0, 0x9277a185000000000000000000000000e128c4962c7d6b73197e04640b15896fcfaca7d5, 0x22f2caf1000000000000000000000000905cd24370018befb6c648420d35dfeba9e62602, 0x22f2caf1000000000000000000000000d28d02f82a1d735c973b5b24c30ed7a56839fb96, 0x22f2caf100000000000000000000000015a8067f0b38e29f7fcffb93f85c585748d49d82]", + "[0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA]", + "[0, 0, 0]", + "[0x22f2caf1000000000000000000000000dbcdba358a804dc388f33ffbd7fa664cf689cabd, 0x22f2caf100000000000000000000000001fe6834fa3af286d6c568dc868ceec08f7dad20, 0x22f2caf1000000000000000000000000840974f44d2738661703292ccf339c404a864ac4]", "0x0000000000000000000000000000000000000000000000000000000000000000", "0x00000000000000000000000000000000000000000000000000000000000003e8", "0" ], "transaction": { "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x60163d6406503426e712ed6c507137229552756d", - "gas": "0x1e607", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x1805b", "value": "0x0", - "input": "0x8f2a0bb000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e80000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d6300000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d6300000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d6300000000000000000000000081f17748b0abe955790346b904f6b78e67594ed000000000000000000000000081f17748b0abe955790346b904f6b78e67594ed000000000000000000000000081f17748b0abe955790346b904f6b78e67594ed00000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000002a00000000000000000000000000000000000000000000000000000000000000024c68e00fb0000000000000000000000000fe7ff9421839bd2cf4d0d959450f57491ea11090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000245b34b82300000000000000000000000081f17748b0abe955790346b904f6b78e67594ed00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000249277a185000000000000000000000000e128c4962c7d6b73197e04640b15896fcfaca7d500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000905cd24370018befb6c648420d35dfeba9e6260200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000d28d02f82a1d735c973b5b24c30ed7a56839fb9600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000015a8067f0b38e29f7fcffb93f85c585748d49d8200000000000000000000000000000000000000000000000000000000", - "nonce": "0x8", + "input": "0x8f2a0bb000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000001c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca00000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000dbcdba358a804dc388f33ffbd7fa664cf689cabd00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000001fe6834fa3af286d6c568dc868ceec08f7dad2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000840974f44d2738661703292ccf339c404a864ac400000000000000000000000000000000000000000000000000000000", + "nonce": "0x33", "chainId": "0x2105" }, "additionalContracts": [], "isFixedGasLimit": false }, { - "hash": "0x65af8b1c033fe85568f720f90d598ce20960f0f9b5b97a70b702f6e875dcdaa1", + "hash": "0x0f834890fbaa6d502b430a0d0e73d5da9a18ef4bd8f0633729c461ac3ebb9b30", "transactionType": "CALL", - "contractName": "YieldSeekerAdminTimelock", - "contractAddress": "0x60163d6406503426e712ed6c507137229552756d", + "contractName": null, + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", "function": "executeBatch(address[],uint256[],bytes[],bytes32,bytes32)", "arguments": [ - "[0x23AAFAeb5B78816dBCf20D503A73Cd9750A21d63, 0x23AAFAeb5B78816dBCf20D503A73Cd9750A21d63, 0x23AAFAeb5B78816dBCf20D503A73Cd9750A21d63, 0x81f17748B0abE955790346B904f6B78E67594ed0, 0x81f17748B0abE955790346B904f6B78E67594ed0, 0x81f17748B0abE955790346B904f6B78E67594ed0]", - "[0, 0, 0, 0, 0, 0]", - "[0xc68e00fb0000000000000000000000000fe7ff9421839bd2cf4d0d959450f57491ea1109, 0x5b34b82300000000000000000000000081f17748b0abe955790346b904f6b78e67594ed0, 0x9277a185000000000000000000000000e128c4962c7d6b73197e04640b15896fcfaca7d5, 0x22f2caf1000000000000000000000000905cd24370018befb6c648420d35dfeba9e62602, 0x22f2caf1000000000000000000000000d28d02f82a1d735c973b5b24c30ed7a56839fb96, 0x22f2caf100000000000000000000000015a8067f0b38e29f7fcffb93f85c585748d49d82]", + "[0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA, 0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA]", + "[0, 0, 0]", + "[0x22f2caf1000000000000000000000000dbcdba358a804dc388f33ffbd7fa664cf689cabd, 0x22f2caf100000000000000000000000001fe6834fa3af286d6c568dc868ceec08f7dad20, 0x22f2caf1000000000000000000000000840974f44d2738661703292ccf339c404a864ac4]", "0x0000000000000000000000000000000000000000000000000000000000000000", "0x00000000000000000000000000000000000000000000000000000000000003e8" ], "transaction": { "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x60163d6406503426e712ed6c507137229552756d", - "gas": "0x5027b", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x30a9b", "value": "0x0", - "input": "0xe38335e500000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001800000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000000600000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d6300000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d6300000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d6300000000000000000000000081f17748b0abe955790346b904f6b78e67594ed000000000000000000000000081f17748b0abe955790346b904f6b78e67594ed000000000000000000000000081f17748b0abe955790346b904f6b78e67594ed00000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000002a00000000000000000000000000000000000000000000000000000000000000024c68e00fb0000000000000000000000000fe7ff9421839bd2cf4d0d959450f57491ea11090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000245b34b82300000000000000000000000081f17748b0abe955790346b904f6b78e67594ed00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000249277a185000000000000000000000000e128c4962c7d6b73197e04640b15896fcfaca7d500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000905cd24370018befb6c648420d35dfeba9e6260200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000d28d02f82a1d735c973b5b24c30ed7a56839fb9600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000015a8067f0b38e29f7fcffb93f85c585748d49d8200000000000000000000000000000000000000000000000000000000", - "nonce": "0x9", + "input": "0xe38335e500000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e800000000000000000000000000000000000000000000000000000000000000030000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca00000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000dbcdba358a804dc388f33ffbd7fa664cf689cabd00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000001fe6834fa3af286d6c568dc868ceec08f7dad2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000840974f44d2738661703292ccf339c404a864ac400000000000000000000000000000000000000000000000000000000", + "nonce": "0x34", "chainId": "0x2105" }, "additionalContracts": [], "isFixedGasLimit": false } ], - "receipts": [ - { - "status": "0x1", - "cumulativeGasUsed": "0x14512c1", - "logs": [ - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x00000000000000000000000060163d6406503426e712ed6c507137229552756d", - "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xba4b51caf4af8220fa2436d1a39e97c40710037ecbb540366213ce3531bec0d9", - "transactionIndex": "0x5d", - "logIndex": "0x254", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "0xb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc1", - "0x000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", - "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xba4b51caf4af8220fa2436d1a39e97c40710037ecbb540366213ce3531bec0d9", - "transactionIndex": "0x5d", - "logIndex": "0x255", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "0xfd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f783", - "0x000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", - "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xba4b51caf4af8220fa2436d1a39e97c40710037ecbb540366213ce3531bec0d9", - "transactionIndex": "0x5d", - "logIndex": "0x256", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "0xd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e63", - "0x000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", - "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xba4b51caf4af8220fa2436d1a39e97c40710037ecbb540366213ce3531bec0d9", - "transactionIndex": "0x5d", - "logIndex": "0x257", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0x11c24f4ead16507c69ac467fbd5e4eed5fb5c699626d2cc6d66421df253886d5" - ], - "data": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xba4b51caf4af8220fa2436d1a39e97c40710037ecbb540366213ce3531bec0d9", - "transactionIndex": "0x5d", - "logIndex": "0x258", - "removed": false - } - ], - "logsBloom": "0x00000004000200000000000000000000020000000000000000000000000000400200000000000000000000080001000000000000000000000200000010200000000200000000000000000010000000000000000000000000000000000000000000080000020000000000000000000800000000000000000000020000000000000000000000040040000000000000000000000000001000080000000000000000000000000021800000000000000000000000000000000000001000000000000000000000000000004000000000000000000000000000000100000100200020000000000000000000000000000000000080000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0xba4b51caf4af8220fa2436d1a39e97c40710037ecbb540366213ce3531bec0d9", - "transactionIndex": "0x5d", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "gasUsed": "0x14be87", - "effectiveGasPrice": "0xfbe22", - "blobGasUsed": "0x1244f4", - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": "0x60163d6406503426e712ed6c507137229552756d", - "daFootprintGasScalar": "0x145", - "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x1de93f", - "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x2f146f824", - "l1GasPrice": "0x23baaa2", - "l1GasUsed": "0xe64d" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x1587849", - "logs": [ - { - "address": "0x23aafaeb5b78816dbcf20d503a73cd9750a21d63", - "topics": [ - "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x00000000000000000000000060163d6406503426e712ed6c507137229552756d", - "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0x7556e7e15ddb03c8761b98a889bdec5734f9e20151b58ee7335f7fd8fe4bb305", - "transactionIndex": "0x5e", - "logIndex": "0x259", - "removed": false - }, - { - "address": "0x23aafaeb5b78816dbcf20d503a73cd9750a21d63", - "topics": [ - "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "0x2fbb137a62ebd69bc6a41f4b4e96301da2105eef211fb1a3c75e8cfb9bfe7879", - "0x000000000000000000000000fbd0a3646bac17ee60860df7751129735b3f07a8", - "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0x7556e7e15ddb03c8761b98a889bdec5734f9e20151b58ee7335f7fd8fe4bb305", - "transactionIndex": "0x5e", - "logIndex": "0x25a", - "removed": false - } - ], - "logsBloom": "0x00001004002000000000000000100000010000000000000000000000010000400000000000000000000000080000000000000000000000000000000000000000000200000000001000000000000000000000000000000000000000000000000000000000020000000000000000000800000000000000000000000000000000000000010000000000000000000000000000000000001000000000000000000000000000000001000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000100000000000020020000000000000000000000000000000080000000080000000000000000000000", - "type": "0x2", - "transactionHash": "0x7556e7e15ddb03c8761b98a889bdec5734f9e20151b58ee7335f7fd8fe4bb305", - "transactionIndex": "0x5e", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "gasUsed": "0x136588", - "effectiveGasPrice": "0xfbe22", - "blobGasUsed": "0xfb49b", - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": "0x23aafaeb5b78816dbcf20d503a73cd9750a21d63", - "daFootprintGasScalar": "0x145", - "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x1de93f", - "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x2876d624d", - "l1GasPrice": "0x23baaa2", - "l1GasUsed": "0xc5f1" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x17fb07b", - "logs": [ - { - "address": "0x0fe7ff9421839bd2cf4d0d959450f57491ea1109", - "topics": [ - "0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2" - ], - "data": "0x000000000000000000000000000000000000000000000000ffffffffffffffff", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0x2cdf70d0268ca2dd70328a3f1d83faa45f9480531ec5d530f15abe2a56473f0f", - "transactionIndex": "0x60", - "logIndex": "0x25d", - "removed": false - } - ], - "logsBloom": "0x00000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x2cdf70d0268ca2dd70328a3f1d83faa45f9480531ec5d530f15abe2a56473f0f", - "transactionIndex": "0x60", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "gasUsed": "0x25e78e", - "effectiveGasPrice": "0xfbe22", - "blobGasUsed": "0x1d358a", - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": "0x0fe7ff9421839bd2cf4d0d959450f57491ea1109", - "daFootprintGasScalar": "0x145", - "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x1de93f", - "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x4b4354f2f", - "l1GasPrice": "0x23baaa2", - "l1GasUsed": "0x1702b" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x18c9fc0", - "logs": [ - { - "address": "0x81f17748b0abe955790346b904f6b78e67594ed0", - "topics": [ - "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x00000000000000000000000060163d6406503426e712ed6c507137229552756d", - "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0x3d741471d6fee67090289f518710f0e8a3f0fb6e4df6d16760d0ffcb8f0d892f", - "transactionIndex": "0x61", - "logIndex": "0x25e", - "removed": false - }, - { - "address": "0x81f17748b0abe955790346b904f6b78e67594ed0", - "topics": [ - "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "0xbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b26", - "0x000000000000000000000000f8cbf6437d2473ec59885299af38d9a13ce97eca", - "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0x3d741471d6fee67090289f518710f0e8a3f0fb6e4df6d16760d0ffcb8f0d892f", - "transactionIndex": "0x61", - "logIndex": "0x25f", - "removed": false - } - ], - "logsBloom": "0x00000004000200000000000400000000000000000000000000000000000000400200000000000000000000080040000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000410000000000000020000000000008000000800000000000000000000000000000000000000008000000000000000000000000000000000001000000000000000000000000000000001800000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000100000000000020000000000000000000000000000000000080000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x3d741471d6fee67090289f518710f0e8a3f0fb6e4df6d16760d0ffcb8f0d892f", - "transactionIndex": "0x61", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "gasUsed": "0xcef45", - "effectiveGasPrice": "0xfbe22", - "blobGasUsed": "0xb1053", - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": "0x81f17748b0abe955790346b904f6b78e67594ed0", - "daFootprintGasScalar": "0x145", - "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x1de93f", - "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x1c83f6151", - "l1GasPrice": "0x23baaa2", - "l1GasUsed": "0x8b7d" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x19a20f2", - "logs": [ - { - "address": "0xe128c4962c7d6b73197e04640b15896fcfaca7d5", - "topics": [ - "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x00000000000000000000000060163d6406503426e712ed6c507137229552756d", - "0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xfc911b5f981c72ba5b4e0d3ffe9fd0f30a1bcc5de944e6a9fdc8990c9654c58c", - "transactionIndex": "0x62", - "logIndex": "0x260", - "removed": false - } - ], - "logsBloom": "0x00000004000000000000000000000000000000000000000000000000000000400000000000000000000000080000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000020040000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000001000000000000000000000002000000000000001000000000000000000000000000000000000000000000000020000000000100000000000020000000000000000000000000000000000080000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0xfc911b5f981c72ba5b4e0d3ffe9fd0f30a1bcc5de944e6a9fdc8990c9654c58c", - "transactionIndex": "0x62", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "gasUsed": "0xd8132", - "effectiveGasPrice": "0xfbe22", - "blobGasUsed": "0xaf096", - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": "0xe128c4962c7d6b73197e04640b15896fcfaca7d5", - "daFootprintGasScalar": "0x145", - "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x1de93f", - "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x1c31e16a5", - "l1GasPrice": "0x23baaa2", - "l1GasUsed": "0x89ec" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x1a2701a", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x8824f4e199cb9ad5594d318dbc33c4592ee2ffb523f727d318cd768e7701d171", - "transactionIndex": "0x63", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "gasUsed": "0x84f28", - "effectiveGasPrice": "0xfbe22", - "blobGasUsed": "0x6d2e0", - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": "0x905cd24370018befb6c648420d35dfeba9e62602", - "daFootprintGasScalar": "0x145", - "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x1de93f", - "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x1197be8e4", - "l1GasPrice": "0x23baaa2", - "l1GasUsed": "0x560f" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x1acd105", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x8cd9c75b35a9ad0d1479c7668c4f57fd75d738c6924d19aec402a6cce78573b5", - "transactionIndex": "0x64", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "gasUsed": "0xa60eb", - "effectiveGasPrice": "0xfbe22", - "blobGasUsed": "0x95e25", - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": "0xd28d02f82a1d735c973b5b24c30ed7a56839fb96", - "daFootprintGasScalar": "0x145", - "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x1de93f", - "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x1824ed632", - "l1GasPrice": "0x23baaa2", - "l1GasUsed": "0x761b" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x1d57757", - "logs": [], - "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "type": "0x2", - "transactionHash": "0x65af8b1c033fe85568f720f90d598ce20960f0f9b5b97a70b702f6e875dcdaa1", - "transactionIndex": "0x74", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "gasUsed": "0x8b5d5", - "effectiveGasPrice": "0xfbe22", - "blobGasUsed": "0x7b61f", - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", - "contractAddress": "0x15a8067f0b38e29f7fcffb93f85c585748d49d82", - "daFootprintGasScalar": "0x145", - "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x1de93f", - "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x13e140ea2", - "l1GasPrice": "0x23baaa2", - "l1GasUsed": "0x613f" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x1d6d737", - "logs": [ - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a", - "0x0000000000000000000000000000000000000000000000000000000000000000" - ], - "data": "0x00000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d63000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024c68e00fb0000000000000000000000000fe7ff9421839bd2cf4d0d959450f57491ea110900000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0x4dfc82a3f687b63a8420921951ba11cb4f4cf0b4a56d93f4ece4af9bec899235", - "transactionIndex": "0x75", - "logIndex": "0x299", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a", - "0x0000000000000000000000000000000000000000000000000000000000000001" - ], - "data": "0x00000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d63000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000245b34b82300000000000000000000000081f17748b0abe955790346b904f6b78e67594ed000000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0x4dfc82a3f687b63a8420921951ba11cb4f4cf0b4a56d93f4ece4af9bec899235", - "transactionIndex": "0x75", - "logIndex": "0x29a", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a", - "0x0000000000000000000000000000000000000000000000000000000000000002" - ], - "data": "0x00000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d63000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000249277a185000000000000000000000000e128c4962c7d6b73197e04640b15896fcfaca7d500000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0x4dfc82a3f687b63a8420921951ba11cb4f4cf0b4a56d93f4ece4af9bec899235", - "transactionIndex": "0x75", - "logIndex": "0x29b", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a", - "0x0000000000000000000000000000000000000000000000000000000000000003" - ], - "data": "0x00000000000000000000000081f17748b0abe955790346b904f6b78e67594ed0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000905cd24370018befb6c648420d35dfeba9e6260200000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0x4dfc82a3f687b63a8420921951ba11cb4f4cf0b4a56d93f4ece4af9bec899235", - "transactionIndex": "0x75", - "logIndex": "0x29c", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a", - "0x0000000000000000000000000000000000000000000000000000000000000004" - ], - "data": "0x00000000000000000000000081f17748b0abe955790346b904f6b78e67594ed0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000d28d02f82a1d735c973b5b24c30ed7a56839fb9600000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0x4dfc82a3f687b63a8420921951ba11cb4f4cf0b4a56d93f4ece4af9bec899235", - "transactionIndex": "0x75", - "logIndex": "0x29d", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a", - "0x0000000000000000000000000000000000000000000000000000000000000005" - ], - "data": "0x00000000000000000000000081f17748b0abe955790346b904f6b78e67594ed0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000015a8067f0b38e29f7fcffb93f85c585748d49d8200000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0x4dfc82a3f687b63a8420921951ba11cb4f4cf0b4a56d93f4ece4af9bec899235", - "transactionIndex": "0x75", - "logIndex": "0x29e", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a" - ], - "data": "0x00000000000000000000000000000000000000000000000000000000000003e8", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0x4dfc82a3f687b63a8420921951ba11cb4f4cf0b4a56d93f4ece4af9bec899235", - "transactionIndex": "0x75", - "logIndex": "0x29f", - "removed": false - } - ], - "logsBloom": "0x04000000000000000200000040000000000000000000000000000000000000000000000000000000000000000010000100000000820000000000000000040000000010000000000000000000000000000000000000040008000000000000000008080000020000000000000000000800000080000000000000000000000000000000000000040040000000000000001000000800000000000000000000000000000000000000000000000100000000000000000000800000002000000000400000000000000000000000000000000000000000008000400000000000000060000000000000000008000000000000000000000000008000000000000000000000", - "type": "0x2", - "transactionHash": "0x4dfc82a3f687b63a8420921951ba11cb4f4cf0b4a56d93f4ece4af9bec899235", - "transactionIndex": "0x75", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "gasUsed": "0x15fe0", - "effectiveGasPrice": "0xfbe22", - "blobGasUsed": "0x19640", - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x60163d6406503426e712ed6c507137229552756d", - "contractAddress": null, - "daFootprintGasScalar": "0x145", - "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x1de93f", - "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x41825451", - "l1GasPrice": "0x23baaa2", - "l1GasUsed": "0x1407" - }, - { - "status": "0x1", - "cumulativeGasUsed": "0x1da77b6", - "logs": [ - { - "address": "0x23aafaeb5b78816dbcf20d503a73cd9750a21d63", - "topics": [ - "0xab64f92ab780ecbf4f3866f57cee465ff36c89450dcce20237ca7a8d81fb7d13", - "0x0000000000000000000000000fe7ff9421839bd2cf4d0d959450f57491ea1109" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "logIndex": "0x2a0", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a", - "0x0000000000000000000000000000000000000000000000000000000000000000" - ], - "data": "0x00000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d63000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c68e00fb0000000000000000000000000fe7ff9421839bd2cf4d0d959450f57491ea110900000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "logIndex": "0x2a1", - "removed": false - }, - { - "address": "0x23aafaeb5b78816dbcf20d503a73cd9750a21d63", - "topics": [ - "0x482b97c53e48ffa324a976e2738053e9aff6eee04d8aac63b10e19411d869b82", - "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x00000000000000000000000081f17748b0abe955790346b904f6b78e67594ed0" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "logIndex": "0x2a2", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a", - "0x0000000000000000000000000000000000000000000000000000000000000001" - ], - "data": "0x00000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d630000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000245b34b82300000000000000000000000081f17748b0abe955790346b904f6b78e67594ed000000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "logIndex": "0x2a3", - "removed": false - }, - { - "address": "0x23aafaeb5b78816dbcf20d503a73cd9750a21d63", - "topics": [ - "0x5a69769904291a5b71c7f53981055587f0f849edb458cc47e64510be36d164d3", - "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x000000000000000000000000e128c4962c7d6b73197e04640b15896fcfaca7d5" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "logIndex": "0x2a4", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a", - "0x0000000000000000000000000000000000000000000000000000000000000002" - ], - "data": "0x00000000000000000000000023aafaeb5b78816dbcf20d503a73cd9750a21d630000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000249277a185000000000000000000000000e128c4962c7d6b73197e04640b15896fcfaca7d500000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "logIndex": "0x2a5", - "removed": false - }, - { - "address": "0x81f17748b0abe955790346b904f6b78e67594ed0", - "topics": [ - "0xa77e7c594c11a0d5d9d8e6a9132ac0db912dc0f34f5fb7d94860fe38d16410bd", - "0x000000000000000000000000905cd24370018befb6c648420d35dfeba9e62602" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "logIndex": "0x2a6", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a", - "0x0000000000000000000000000000000000000000000000000000000000000003" - ], - "data": "0x00000000000000000000000081f17748b0abe955790346b904f6b78e67594ed000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000905cd24370018befb6c648420d35dfeba9e6260200000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "logIndex": "0x2a7", - "removed": false - }, - { - "address": "0x81f17748b0abe955790346b904f6b78e67594ed0", - "topics": [ - "0xa77e7c594c11a0d5d9d8e6a9132ac0db912dc0f34f5fb7d94860fe38d16410bd", - "0x000000000000000000000000d28d02f82a1d735c973b5b24c30ed7a56839fb96" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "logIndex": "0x2a8", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a", - "0x0000000000000000000000000000000000000000000000000000000000000004" - ], - "data": "0x00000000000000000000000081f17748b0abe955790346b904f6b78e67594ed000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002422f2caf1000000000000000000000000d28d02f82a1d735c973b5b24c30ed7a56839fb9600000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "logIndex": "0x2a9", - "removed": false - }, - { - "address": "0x81f17748b0abe955790346b904f6b78e67594ed0", - "topics": [ - "0xa77e7c594c11a0d5d9d8e6a9132ac0db912dc0f34f5fb7d94860fe38d16410bd", - "0x00000000000000000000000015a8067f0b38e29f7fcffb93f85c585748d49d82" - ], - "data": "0x", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "logIndex": "0x2aa", - "removed": false - }, - { - "address": "0x60163d6406503426e712ed6c507137229552756d", - "topics": [ - "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", - "0xa4a4ecb5f57bc2ec579db47a3587224715af39df976a895c3c0c520156e59b8a", - "0x0000000000000000000000000000000000000000000000000000000000000005" - ], - "data": "0x00000000000000000000000081f17748b0abe955790346b904f6b78e67594ed000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002422f2caf100000000000000000000000015a8067f0b38e29f7fcffb93f85c585748d49d8200000000000000000000000000000000000000000000000000000000", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "blockTimestamp": "0x6962744d", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "logIndex": "0x2ab", - "removed": false - } - ], - "logsBloom": "0x04000000002000000200040400000000000800000000000000000000100000100000000000000000000000400010000000000000020a00010000000000840000002010000000001000000010000100000000000000040000000000000400002008080000020000000000000000000804000000200000000000000000000000000000008000040040000000000000001040000800000000000000000082000000000000000000000000000100000000000001000000800000202080400000400000000020100000080000000000000000200400008000000000000000000060000000000100000008800404000000100000000000088000000000000000000000", - "type": "0x2", - "transactionHash": "0xcbc0c348feca6fd0461c66a8bff7964e664ab64efb497337abfe39091b01458f", - "transactionIndex": "0x76", - "blockHash": "0xa8917895167433972e6fb39802fc823eb38eff0dbbe0d78d6e15cd9a6a49939e", - "blockNumber": "0x26c0bb5", - "gasUsed": "0x3a07f", - "effectiveGasPrice": "0xfbe22", - "blobGasUsed": "0x193b6", - "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x60163d6406503426e712ed6c507137229552756d", - "contractAddress": null, - "daFootprintGasScalar": "0x145", - "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x1de93f", - "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x412ac6ce", - "l1GasPrice": "0x23baaa2", - "l1GasUsed": "0x13ec" - } - ], + "receipts": [], "libraries": [], - "pending": [], + "pending": [ + "0xf1af1f1e395a35dd2149b0685d5a57c8b6c3dd33afcd7a26f7a76f045b9dd6d0", + "0x64e6193e33c9be328a25ed28f2fe5333b9ea9f8d4da707bc5554adb3db43a7e7", + "0x1f4f410b8aae741dbd59cc026cf95cac68c43875cc9ae951dafb034bce857df2", + "0x6f0e6d853692140ee8196fe209a590102f1568fb481cba620b058db349733e29", + "0x0ec9b49ba69c03c671a197969a9e377e4c2df7ceefd6246b46b3d65300e15af3", + "0x0f834890fbaa6d502b430a0d0e73d5da9a18ef4bd8f0633729c461ac3ebb9b30" + ], "returns": {}, - "timestamp": 1768060132625, + "timestamp": 1771280437895, "chain": 8453, - "commit": "a2591e4" + "commit": "19e389e" } \ No newline at end of file diff --git a/broadcast/RegisterVault.s.sol/8453/run-1771012779218.json b/broadcast/RegisterVault.s.sol/8453/run-1771012779218.json new file mode 100644 index 0000000..93fdc81 --- /dev/null +++ b/broadcast/RegisterVault.s.sol/8453/run-1771012779218.json @@ -0,0 +1,176 @@ +{ + "transactions": [ + { + "hash": "0xbef61aeff36fa7e57d317e861cf6c258babdeb6b58a57321b393ff26f5be412a", + "transactionType": "CALL", + "contractName": null, + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "schedule(address,uint256,bytes,bytes32,bytes32,uint256)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e0000000000000000000000004e65fe4dba92790696d040ac24aa414708f5c0ab000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x5b9b78fddd4b54eda824ba287451689459a3a5697bd0dea30a1be199d5751139", + "0" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x13289", + "value": "0x0", + "input": "0x01d5062a0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000005b9b78fddd4b54eda824ba287451689459a3a5697bd0dea30a1be199d5751139000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e0000000000000000000000004e65fe4dba92790696d040ac24aa414708f5c0ab000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e00000000000000000000000000000000000000000000000000000000", + "nonce": "0x25", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x5beee24505da1dcc18d042021eb2b9d6fd90c5247a39aa44da5769b508fe6044", + "transactionType": "CALL", + "contractName": null, + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "execute(address,uint256,bytes,bytes32,bytes32)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e0000000000000000000000004e65fe4dba92790696d040ac24aa414708f5c0ab000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x5b9b78fddd4b54eda824ba287451689459a3a5697bd0dea30a1be199d5751139" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x2e36e", + "value": "0x0", + "input": "0x134008d30000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000005b9b78fddd4b54eda824ba287451689459a3a5697bd0dea30a1be199d575113900000000000000000000000000000000000000000000000000000000000000449362149e0000000000000000000000004e65fe4dba92790696d040ac24aa414708f5c0ab000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e00000000000000000000000000000000000000000000000000000000", + "nonce": "0x26", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0xf8795b", + "logs": [ + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0xba3d67a2a3a546537fe5e8043c360667fdf4c38c106f6bf805cf366f53064b30", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e0000000000000000000000004e65fe4dba92790696d040ac24aa414708f5c0ab000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e00000000000000000000000000000000000000000000000000000000", + "blockHash": "0x70ee4a07f7da3560fe97fa07f70f5b7b94fdfe5751b2af8984404214e1bb25ae", + "blockNumber": "0x28292e2", + "blockTimestamp": "0x698f82a7", + "transactionHash": "0x5beee24505da1dcc18d042021eb2b9d6fd90c5247a39aa44da5769b508fe6044", + "transactionIndex": "0x49", + "logIndex": "0x1ca", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", + "0xba3d67a2a3a546537fe5e8043c360667fdf4c38c106f6bf805cf366f53064b30" + ], + "data": "0x5b9b78fddd4b54eda824ba287451689459a3a5697bd0dea30a1be199d5751139", + "blockHash": "0x70ee4a07f7da3560fe97fa07f70f5b7b94fdfe5751b2af8984404214e1bb25ae", + "blockNumber": "0x28292e2", + "blockTimestamp": "0x698f82a7", + "transactionHash": "0x5beee24505da1dcc18d042021eb2b9d6fd90c5247a39aa44da5769b508fe6044", + "transactionIndex": "0x49", + "logIndex": "0x1cb", + "removed": false + } + ], + "logsBloom": "0x00000080000000000800000040000000000000002000000000000000000000000000000000000000000000000000000100000000800000000000000000000000000000000000000000800000000000000000000000000008000000000000000000000000020000000000000000000800000080000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000020000000000020000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x5beee24505da1dcc18d042021eb2b9d6fd90c5247a39aa44da5769b508fe6044", + "transactionIndex": "0x49", + "blockHash": "0x70ee4a07f7da3560fe97fa07f70f5b7b94fdfe5751b2af8984404214e1bb25ae", + "blockNumber": "0x28292e2", + "gasUsed": "0xddee", + "effectiveGasPrice": "0x5b665f", + "blobGasUsed": "0x5cd9", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x30392b", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x36d55d7f", + "l1GasPrice": "0x3536e23", + "l1GasUsed": "0xab8" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0xfa90b1", + "logs": [ + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0x1cf35c87329e14a81fdc68af8a463c1db203ccfc925ff5150f5dbc71bc4c2372", + "0x0000000000000000000000004e65fe4dba92790696d040ac24aa414708f5c0ab", + "0x000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e" + ], + "data": "0x", + "blockHash": "0x70ee4a07f7da3560fe97fa07f70f5b7b94fdfe5751b2af8984404214e1bb25ae", + "blockNumber": "0x28292e2", + "blockTimestamp": "0x698f82a7", + "transactionHash": "0xbef61aeff36fa7e57d317e861cf6c258babdeb6b58a57321b393ff26f5be412a", + "transactionIndex": "0x4a", + "logIndex": "0x1cc", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0xba3d67a2a3a546537fe5e8043c360667fdf4c38c106f6bf805cf366f53064b30", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000449362149e0000000000000000000000004e65fe4dba92790696d040ac24aa414708f5c0ab000000000000000000000000c6b0eeff559a23187506440f8c62f58aea02fb4e00000000000000000000000000000000000000000000000000000000", + "blockHash": "0x70ee4a07f7da3560fe97fa07f70f5b7b94fdfe5751b2af8984404214e1bb25ae", + "blockNumber": "0x28292e2", + "blockTimestamp": "0x698f82a7", + "transactionHash": "0xbef61aeff36fa7e57d317e861cf6c258babdeb6b58a57321b393ff26f5be412a", + "transactionIndex": "0x4a", + "logIndex": "0x1cd", + "removed": false + } + ], + "logsBloom": "0x00000080000000000800000000000000000008002000000000000000000000000000000000000000000080000000000008000000000800000200000000000000000000000000000000800000000000000000000000000000000000000000002000000000020000000000000000000800001000000000000000000400000000000000008000000000000000000000000000000004000000000000001000000000000000000000000000000000000000000010000000000000000000000000000000000000000000080000000000000020000000000000000000000000000020100000000020000000000000000000000000000000000000010000000000000000", + "type": "0x2", + "transactionHash": "0xbef61aeff36fa7e57d317e861cf6c258babdeb6b58a57321b393ff26f5be412a", + "transactionIndex": "0x4a", + "blockHash": "0x70ee4a07f7da3560fe97fa07f70f5b7b94fdfe5751b2af8984404214e1bb25ae", + "blockNumber": "0x28292e2", + "gasUsed": "0x21756", + "effectiveGasPrice": "0x5b665f", + "blobGasUsed": "0x5bc3", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x30392b", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x36080800", + "l1GasPrice": "0x3536e23", + "l1GasUsed": "0xa90" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1771012779218, + "chain": 8453, + "commit": "feef4c5" +} \ No newline at end of file diff --git a/broadcast/RegisterVault.s.sol/8453/run-1771012802948.json b/broadcast/RegisterVault.s.sol/8453/run-1771012802948.json new file mode 100644 index 0000000..c1fff9b --- /dev/null +++ b/broadcast/RegisterVault.s.sol/8453/run-1771012802948.json @@ -0,0 +1,176 @@ +{ + "transactions": [ + { + "hash": "0xe2446dffa5a719cba835f8922f6c8a8365fbc506c2057b5e9295472df3374c2c", + "transactionType": "CALL", + "contractName": null, + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "schedule(address,uint256,bytes,bytes32,bytes32,uint256)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e000000000000000000000000b125e6687d4313864e53df431d5425969c15eb2f00000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a8", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xa1cb2b69d9c7da0dec98d9b3fbb269afedad23e85be81e606beef844134e01ab", + "0" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x13289", + "value": "0x0", + "input": "0x01d5062a0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000000a1cb2b69d9c7da0dec98d9b3fbb269afedad23e85be81e606beef844134e01ab000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000b125e6687d4313864e53df431d5425969c15eb2f00000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a800000000000000000000000000000000000000000000000000000000", + "nonce": "0x27", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x63ac38d1053f78f416d446a5138940634b6ffddcedc54d72db91559aee9ca5d4", + "transactionType": "CALL", + "contractName": null, + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "execute(address,uint256,bytes,bytes32,bytes32)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e000000000000000000000000b125e6687d4313864e53df431d5425969c15eb2f00000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a8", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xa1cb2b69d9c7da0dec98d9b3fbb269afedad23e85be81e606beef844134e01ab" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x2ad3c", + "value": "0x0", + "input": "0x134008d30000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000a1cb2b69d9c7da0dec98d9b3fbb269afedad23e85be81e606beef844134e01ab00000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000b125e6687d4313864e53df431d5425969c15eb2f00000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a800000000000000000000000000000000000000000000000000000000", + "nonce": "0x28", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x1063f16", + "logs": [ + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0x8e60d973c144799a93550011bbe051335d6e50fd4ba2809b106c1a9b4e79b3ce", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000b125e6687d4313864e53df431d5425969c15eb2f00000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a800000000000000000000000000000000000000000000000000000000", + "blockHash": "0x385204ca5167815f3d57f254f710cc2df4ac5549414d8ac6736ec35f9e500b15", + "blockNumber": "0x28292ee", + "blockTimestamp": "0x698f82bf", + "transactionHash": "0xe2446dffa5a719cba835f8922f6c8a8365fbc506c2057b5e9295472df3374c2c", + "transactionIndex": "0x47", + "logIndex": "0x168", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", + "0x8e60d973c144799a93550011bbe051335d6e50fd4ba2809b106c1a9b4e79b3ce" + ], + "data": "0xa1cb2b69d9c7da0dec98d9b3fbb269afedad23e85be81e606beef844134e01ab", + "blockHash": "0x385204ca5167815f3d57f254f710cc2df4ac5549414d8ac6736ec35f9e500b15", + "blockNumber": "0x28292ee", + "blockTimestamp": "0x698f82bf", + "transactionHash": "0xe2446dffa5a719cba835f8922f6c8a8365fbc506c2057b5e9295472df3374c2c", + "transactionIndex": "0x47", + "logIndex": "0x169", + "removed": false + } + ], + "logsBloom": "0x00000080000000000000000040000000000000000000000000000000000000000000000000000000000000000000000100000000800000000000000000000000000000000000000000800000000000000000000000000008000000000000000000000000020000000000000000000800000080000000000000000400000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000400000000000000020000000000000000000000000000000000000000000040000000000000000000000", + "type": "0x2", + "transactionHash": "0xe2446dffa5a719cba835f8922f6c8a8365fbc506c2057b5e9295472df3374c2c", + "transactionIndex": "0x47", + "blockHash": "0x385204ca5167815f3d57f254f710cc2df4ac5549414d8ac6736ec35f9e500b15", + "blockNumber": "0x28292ee", + "gasUsed": "0xddee", + "effectiveGasPrice": "0x58b3c9", + "blobGasUsed": "0x5cd9", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2b1b34", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x31afa75e", + "l1GasPrice": "0x314ab87", + "l1GasUsed": "0xab8" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x10813a0", + "logs": [ + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0x1cf35c87329e14a81fdc68af8a463c1db203ccfc925ff5150f5dbc71bc4c2372", + "0x000000000000000000000000b125e6687d4313864e53df431d5425969c15eb2f", + "0x00000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a8" + ], + "data": "0x", + "blockHash": "0x385204ca5167815f3d57f254f710cc2df4ac5549414d8ac6736ec35f9e500b15", + "blockNumber": "0x28292ee", + "blockTimestamp": "0x698f82bf", + "transactionHash": "0x63ac38d1053f78f416d446a5138940634b6ffddcedc54d72db91559aee9ca5d4", + "transactionIndex": "0x48", + "logIndex": "0x16a", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0x8e60d973c144799a93550011bbe051335d6e50fd4ba2809b106c1a9b4e79b3ce", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000b125e6687d4313864e53df431d5425969c15eb2f00000000000000000000000065b65d4bf565b3ba92371ccd0b157da1bcb3b1a800000000000000000000000000000000000000000000000000000000", + "blockHash": "0x385204ca5167815f3d57f254f710cc2df4ac5549414d8ac6736ec35f9e500b15", + "blockNumber": "0x28292ee", + "blockTimestamp": "0x698f82bf", + "transactionHash": "0x63ac38d1053f78f416d446a5138940634b6ffddcedc54d72db91559aee9ca5d4", + "transactionIndex": "0x48", + "logIndex": "0x16b", + "removed": false + } + ], + "logsBloom": "0x00000090000000000000000000000000000000000000000008000000000000000000000000000000800000000000000000000000000800000200000000000000000000000000000000800000000000000000000000000000000000000000002000000000020000000000000000000800000000000000000000000400000000000000008000000000000000000000000000000004000000000000001000200400000000000000000000000000000000000000000000000000000002000000000000000000000000080000000080000000000000000000000000000000000020100000000000000000000000000000000000000000040000010000000000400000", + "type": "0x2", + "transactionHash": "0x63ac38d1053f78f416d446a5138940634b6ffddcedc54d72db91559aee9ca5d4", + "transactionIndex": "0x48", + "blockHash": "0x385204ca5167815f3d57f254f710cc2df4ac5549414d8ac6736ec35f9e500b15", + "blockNumber": "0x28292ee", + "gasUsed": "0x1d48a", + "effectiveGasPrice": "0x58b3c9", + "blobGasUsed": "0x5bc3", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2b1b34", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x30f59848", + "l1GasPrice": "0x314ab87", + "l1GasUsed": "0xa90" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1771012802948, + "chain": 8453, + "commit": "feef4c5" +} \ No newline at end of file diff --git a/broadcast/RegisterVault.s.sol/8453/run-1771012847753.json b/broadcast/RegisterVault.s.sol/8453/run-1771012847753.json new file mode 100644 index 0000000..802e3aa --- /dev/null +++ b/broadcast/RegisterVault.s.sol/8453/run-1771012847753.json @@ -0,0 +1,176 @@ +{ + "transactions": [ + { + "hash": "0x57fecfb62cc9a47f5869687bd732288a8c691b874f85708784892f2efb68a71d", + "transactionType": "CALL", + "contractName": null, + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "schedule(address,uint256,bytes,bytes32,bytes32,uint256)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e000000000000000000000000edc817a28e8b93b03976fbd4a3ddbc9f7d176c22000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e3", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x671511ff010bd9991e3536b2d43b51dfc9456bc733a1a2a4db87ed97183708ee", + "0" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x13289", + "value": "0x0", + "input": "0x01d5062a0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000000671511ff010bd9991e3536b2d43b51dfc9456bc733a1a2a4db87ed97183708ee000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000edc817a28e8b93b03976fbd4a3ddbc9f7d176c22000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e300000000000000000000000000000000000000000000000000000000", + "nonce": "0x29", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x4368aadbf86a531104d32c23f38e00349274b76cd3741bc5ab651a6c2c207c50", + "transactionType": "CALL", + "contractName": null, + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "execute(address,uint256,bytes,bytes32,bytes32)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e000000000000000000000000edc817a28e8b93b03976fbd4a3ddbc9f7d176c22000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e3", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x671511ff010bd9991e3536b2d43b51dfc9456bc733a1a2a4db87ed97183708ee" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x2ad3c", + "value": "0x0", + "input": "0x134008d30000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000671511ff010bd9991e3536b2d43b51dfc9456bc733a1a2a4db87ed97183708ee00000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000edc817a28e8b93b03976fbd4a3ddbc9f7d176c22000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e300000000000000000000000000000000000000000000000000000000", + "nonce": "0x2a", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x1d5bb21", + "logs": [ + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0x0039b1678e3a1064ca62e64f794aa4bbc40645f847339cb41a4468a0a6173b96", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000edc817a28e8b93b03976fbd4a3ddbc9f7d176c22000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e300000000000000000000000000000000000000000000000000000000", + "blockHash": "0x07f0a6e970a0506adfe72a83eb796135b739483e2c99d8c61146480f40c2f11f", + "blockNumber": "0x2829304", + "blockTimestamp": "0x698f82eb", + "transactionHash": "0x4368aadbf86a531104d32c23f38e00349274b76cd3741bc5ab651a6c2c207c50", + "transactionIndex": "0xab", + "logIndex": "0x327", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", + "0x0039b1678e3a1064ca62e64f794aa4bbc40645f847339cb41a4468a0a6173b96" + ], + "data": "0x671511ff010bd9991e3536b2d43b51dfc9456bc733a1a2a4db87ed97183708ee", + "blockHash": "0x07f0a6e970a0506adfe72a83eb796135b739483e2c99d8c61146480f40c2f11f", + "blockNumber": "0x2829304", + "blockTimestamp": "0x698f82eb", + "transactionHash": "0x4368aadbf86a531104d32c23f38e00349274b76cd3741bc5ab651a6c2c207c50", + "transactionIndex": "0xab", + "logIndex": "0x328", + "removed": false + } + ], + "logsBloom": "0x00000080000000000000000040000000000000000000000000000000000000000000000000000000000000000000000100000000800000000000000000000000000000000000000000800000000000000000000000000008000000000000000000000000020000000000000000000800000080000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000020000000000000000002000000000000000000000000000000000080000000000000", + "type": "0x2", + "transactionHash": "0x4368aadbf86a531104d32c23f38e00349274b76cd3741bc5ab651a6c2c207c50", + "transactionIndex": "0xab", + "blockHash": "0x07f0a6e970a0506adfe72a83eb796135b739483e2c99d8c61146480f40c2f11f", + "blockNumber": "0x2829304", + "gasUsed": "0xddee", + "effectiveGasPrice": "0x5acf67", + "blobGasUsed": "0x5cd9", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2d40dc", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x32b74c9b", + "l1GasPrice": "0x3008f83", + "l1GasUsed": "0xab8" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x1d78fab", + "logs": [ + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0x1cf35c87329e14a81fdc68af8a463c1db203ccfc925ff5150f5dbc71bc4c2372", + "0x000000000000000000000000edc817a28e8b93b03976fbd4a3ddbc9f7d176c22", + "0x000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e3" + ], + "data": "0x", + "blockHash": "0x07f0a6e970a0506adfe72a83eb796135b739483e2c99d8c61146480f40c2f11f", + "blockNumber": "0x2829304", + "blockTimestamp": "0x698f82eb", + "transactionHash": "0x57fecfb62cc9a47f5869687bd732288a8c691b874f85708784892f2efb68a71d", + "transactionIndex": "0xac", + "logIndex": "0x329", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0x0039b1678e3a1064ca62e64f794aa4bbc40645f847339cb41a4468a0a6173b96", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000edc817a28e8b93b03976fbd4a3ddbc9f7d176c22000000000000000000000000976cedebd26e4d78cbfdb789186510ab9a5747e300000000000000000000000000000000000000000000000000000000", + "blockHash": "0x07f0a6e970a0506adfe72a83eb796135b739483e2c99d8c61146480f40c2f11f", + "blockNumber": "0x2829304", + "blockTimestamp": "0x698f82eb", + "transactionHash": "0x57fecfb62cc9a47f5869687bd732288a8c691b874f85708784892f2efb68a71d", + "transactionIndex": "0xac", + "logIndex": "0x32a", + "removed": false + } + ], + "logsBloom": "0x00000080001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000200000000000000000000000000000000800000000000080000000000000000000000000000002000000000020000000000000000000800000000000000000000000400000000000000008000000000000000000000000000000004000000000000001000000000002000000020200000000000000000000000000000000000000000000000000000000000020040080000000000000000000000000000000000000000000020100000000000000002000000000000000000000000000000010080000000000000", + "type": "0x2", + "transactionHash": "0x57fecfb62cc9a47f5869687bd732288a8c691b874f85708784892f2efb68a71d", + "transactionIndex": "0xac", + "blockHash": "0x07f0a6e970a0506adfe72a83eb796135b739483e2c99d8c61146480f40c2f11f", + "blockNumber": "0x2829304", + "gasUsed": "0x1d48a", + "effectiveGasPrice": "0x5acf67", + "blobGasUsed": "0x5bc3", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x2d40dc", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x31f96241", + "l1GasPrice": "0x3008f83", + "l1GasUsed": "0xa90" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1771012847753, + "chain": 8453, + "commit": "feef4c5" +} \ No newline at end of file diff --git a/broadcast/RegisterVault.s.sol/8453/run-1771012884745.json b/broadcast/RegisterVault.s.sol/8453/run-1771012884745.json new file mode 100644 index 0000000..f634053 --- /dev/null +++ b/broadcast/RegisterVault.s.sol/8453/run-1771012884745.json @@ -0,0 +1,176 @@ +{ + "transactions": [ + { + "hash": "0x522a2de23308547350ef77743f711905e6dedf6a59e25f64d077a916778cb851", + "transactionType": "CALL", + "contractName": null, + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "schedule(address,uint256,bytes,bytes32,bytes32,uint256)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e0000000000000000000000000000000000001ff3684f28c67538d4d072c22734000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c466", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x68b6c676c0f87235569d03952f678d0b5536e02d893cd4ddbef4a94e6d996e31", + "0" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x13226", + "value": "0x0", + "input": "0x01d5062a0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000068b6c676c0f87235569d03952f678d0b5536e02d893cd4ddbef4a94e6d996e31000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e0000000000000000000000000000000000001ff3684f28c67538d4d072c22734000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c46600000000000000000000000000000000000000000000000000000000", + "nonce": "0x2b", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x9e1eec76b5ba7ecae558975444a43c02e1fec22dba0f0e34e0dfc65eee192acb", + "transactionType": "CALL", + "contractName": null, + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "execute(address,uint256,bytes,bytes32,bytes32)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e0000000000000000000000000000000000001ff3684f28c67538d4d072c22734000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c466", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x68b6c676c0f87235569d03952f678d0b5536e02d893cd4ddbef4a94e6d996e31" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x2acd3", + "value": "0x0", + "input": "0x134008d30000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000000068b6c676c0f87235569d03952f678d0b5536e02d893cd4ddbef4a94e6d996e3100000000000000000000000000000000000000000000000000000000000000449362149e0000000000000000000000000000000000001ff3684f28c67538d4d072c22734000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c46600000000000000000000000000000000000000000000000000000000", + "nonce": "0x2c", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x1f304ac", + "logs": [ + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0x772ea1518f3074b7a9cc0e88b67c303a279e101f633f70e3f1463d3b3e4ae0e6", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e0000000000000000000000000000000000001ff3684f28c67538d4d072c22734000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c46600000000000000000000000000000000000000000000000000000000", + "blockHash": "0x5de5a58d1f5209daf1eeebdc62af574b46db4942b960107837891a807de5c9d6", + "blockNumber": "0x2829317", + "blockTimestamp": "0x698f8311", + "transactionHash": "0x522a2de23308547350ef77743f711905e6dedf6a59e25f64d077a916778cb851", + "transactionIndex": "0xa9", + "logIndex": "0x363", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", + "0x772ea1518f3074b7a9cc0e88b67c303a279e101f633f70e3f1463d3b3e4ae0e6" + ], + "data": "0x68b6c676c0f87235569d03952f678d0b5536e02d893cd4ddbef4a94e6d996e31", + "blockHash": "0x5de5a58d1f5209daf1eeebdc62af574b46db4942b960107837891a807de5c9d6", + "blockNumber": "0x2829317", + "blockTimestamp": "0x698f8311", + "transactionHash": "0x522a2de23308547350ef77743f711905e6dedf6a59e25f64d077a916778cb851", + "transactionIndex": "0xa9", + "logIndex": "0x364", + "removed": false + } + ], + "logsBloom": "0x00000080000000000000000040000000000000000000000000000000000000000000000000000000000000000000000100000000800000000000002000000000000000000000000000800000000000000000000000000008000000000000000000000000020000000000000000000800800080000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000020000000000000000000004000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x522a2de23308547350ef77743f711905e6dedf6a59e25f64d077a916778cb851", + "transactionIndex": "0xa9", + "blockHash": "0x5de5a58d1f5209daf1eeebdc62af574b46db4942b960107837891a807de5c9d6", + "blockNumber": "0x2829317", + "gasUsed": "0xdda6", + "effectiveGasPrice": "0x5d55d2", + "blobGasUsed": "0x5a22", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x29d5fe", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x2fdeb953", + "l1GasPrice": "0x32a4337", + "l1GasUsed": "0xa68" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x2101ff6", + "logs": [ + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0x1cf35c87329e14a81fdc68af8a463c1db203ccfc925ff5150f5dbc71bc4c2372", + "0x0000000000000000000000000000000000001ff3684f28c67538d4d072c22734", + "0x000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c466" + ], + "data": "0x", + "blockHash": "0x5de5a58d1f5209daf1eeebdc62af574b46db4942b960107837891a807de5c9d6", + "blockNumber": "0x2829317", + "blockTimestamp": "0x698f8311", + "transactionHash": "0x9e1eec76b5ba7ecae558975444a43c02e1fec22dba0f0e34e0dfc65eee192acb", + "transactionIndex": "0xac", + "logIndex": "0x39a", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0x772ea1518f3074b7a9cc0e88b67c303a279e101f633f70e3f1463d3b3e4ae0e6", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000449362149e0000000000000000000000000000000000001ff3684f28c67538d4d072c22734000000000000000000000000153e4801852249d1f7d05ccb13c1d1cf8ae7c46600000000000000000000000000000000000000000000000000000000", + "blockHash": "0x5de5a58d1f5209daf1eeebdc62af574b46db4942b960107837891a807de5c9d6", + "blockNumber": "0x2829317", + "blockTimestamp": "0x698f8311", + "transactionHash": "0x9e1eec76b5ba7ecae558975444a43c02e1fec22dba0f0e34e0dfc65eee192acb", + "transactionIndex": "0xac", + "logIndex": "0x39b", + "removed": false + } + ], + "logsBloom": "0x00000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000200002000000000400000000000000000800000000000000000000000000000000000000000002000000000020000400000000008000800800000000000000000000400000000000000008000000000000000000000000000080004000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000008000000280000000000000000000000000000000000000000000020100000000000000000004000000000000000000000000000010000000000000000", + "type": "0x2", + "transactionHash": "0x9e1eec76b5ba7ecae558975444a43c02e1fec22dba0f0e34e0dfc65eee192acb", + "transactionIndex": "0xac", + "blockHash": "0x5de5a58d1f5209daf1eeebdc62af574b46db4942b960107837891a807de5c9d6", + "blockNumber": "0x2829317", + "gasUsed": "0x1d442", + "effectiveGasPrice": "0x5d55d2", + "blobGasUsed": "0x590c", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x29d5fe", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x2f261044", + "l1GasPrice": "0x32a4337", + "l1GasUsed": "0xa40" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1771012884745, + "chain": 8453, + "commit": "feef4c5" +} \ No newline at end of file diff --git a/broadcast/RegisterVault.s.sol/8453/run-1771280763399.json b/broadcast/RegisterVault.s.sol/8453/run-1771280763399.json new file mode 100644 index 0000000..0398ec3 --- /dev/null +++ b/broadcast/RegisterVault.s.sol/8453/run-1771280763399.json @@ -0,0 +1,176 @@ +{ + "transactions": [ + { + "hash": "0xbc255b31c38f0caa6c065caa94debd2d31e13a5c7a99f5b6fea0feae9c2c7cb9", + "transactionType": "CALL", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "schedule(address,uint256,bytes,bytes32,bytes32,uint256)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e0000000000000000000000002626664c2603336e57b271c5c0b26f421741e481000000000000000000000000dbcdba358a804dc388f33ffbd7fa664cf689cabd", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x34cd3771a0a69bc9474c5ec154c6d7ca1e997ec11b75825012cba49cb04011bf", + "0" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x13289", + "value": "0x0", + "input": "0x01d5062a0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000034cd3771a0a69bc9474c5ec154c6d7ca1e997ec11b75825012cba49cb04011bf000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e0000000000000000000000002626664c2603336e57b271c5c0b26f421741e481000000000000000000000000dbcdba358a804dc388f33ffbd7fa664cf689cabd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x35", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xd7ef03884b2d254da59a6d106c5167fd378c11c15163d532c099cc86bf6cbe96", + "transactionType": "CALL", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "execute(address,uint256,bytes,bytes32,bytes32)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e0000000000000000000000002626664c2603336e57b271c5c0b26f421741e481000000000000000000000000dbcdba358a804dc388f33ffbd7fa664cf689cabd", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x34cd3771a0a69bc9474c5ec154c6d7ca1e997ec11b75825012cba49cb04011bf" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x2ad3c", + "value": "0x0", + "input": "0x134008d30000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000000034cd3771a0a69bc9474c5ec154c6d7ca1e997ec11b75825012cba49cb04011bf00000000000000000000000000000000000000000000000000000000000000449362149e0000000000000000000000002626664c2603336e57b271c5c0b26f421741e481000000000000000000000000dbcdba358a804dc388f33ffbd7fa664cf689cabd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x36", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x3303a9f", + "logs": [ + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0x387549f8f6c82f7f46db4a453472e7350a8311c9c87fe076b5263f7e158f9b14", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e0000000000000000000000002626664c2603336e57b271c5c0b26f421741e481000000000000000000000000dbcdba358a804dc388f33ffbd7fa664cf689cabd00000000000000000000000000000000000000000000000000000000", + "blockHash": "0xd4ec2dd5b880cfb2e3a0bea8b4114e1800318dad07c63bbfd5837d957452877d", + "blockNumber": "0x2849e4a", + "blockTimestamp": "0x69939977", + "transactionHash": "0xbc255b31c38f0caa6c065caa94debd2d31e13a5c7a99f5b6fea0feae9c2c7cb9", + "transactionIndex": "0x7c", + "logIndex": "0x708", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", + "0x387549f8f6c82f7f46db4a453472e7350a8311c9c87fe076b5263f7e158f9b14" + ], + "data": "0x34cd3771a0a69bc9474c5ec154c6d7ca1e997ec11b75825012cba49cb04011bf", + "blockHash": "0xd4ec2dd5b880cfb2e3a0bea8b4114e1800318dad07c63bbfd5837d957452877d", + "blockNumber": "0x2849e4a", + "blockTimestamp": "0x69939977", + "transactionHash": "0xbc255b31c38f0caa6c065caa94debd2d31e13a5c7a99f5b6fea0feae9c2c7cb9", + "transactionIndex": "0x7c", + "logIndex": "0x709", + "removed": false + } + ], + "logsBloom": "0x00000080000000000000000040000000000000000000000000000000000000000000000000000000000000000000000100000000800000000000000000000000000000000000000000800400000000000000000000000008000000000000000000000000020000000000000000000800000080000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000004000000000000000000000400000000000000020000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0xbc255b31c38f0caa6c065caa94debd2d31e13a5c7a99f5b6fea0feae9c2c7cb9", + "transactionIndex": "0x7c", + "blockHash": "0xd4ec2dd5b880cfb2e3a0bea8b4114e1800318dad07c63bbfd5837d957452877d", + "blockNumber": "0x2849e4a", + "gasUsed": "0xddee", + "effectiveGasPrice": "0x40e374", + "blobGasUsed": "0x5cd9", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x1e8c05", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x204372d7", + "l1GasPrice": "0x1b5c8f4", + "l1GasUsed": "0xab8" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x33ffbeb", + "logs": [ + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0x1cf35c87329e14a81fdc68af8a463c1db203ccfc925ff5150f5dbc71bc4c2372", + "0x0000000000000000000000002626664c2603336e57b271c5c0b26f421741e481", + "0x000000000000000000000000dbcdba358a804dc388f33ffbd7fa664cf689cabd" + ], + "data": "0x", + "blockHash": "0xd4ec2dd5b880cfb2e3a0bea8b4114e1800318dad07c63bbfd5837d957452877d", + "blockNumber": "0x2849e4a", + "blockTimestamp": "0x69939977", + "transactionHash": "0xd7ef03884b2d254da59a6d106c5167fd378c11c15163d532c099cc86bf6cbe96", + "transactionIndex": "0x85", + "logIndex": "0x70d", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0x387549f8f6c82f7f46db4a453472e7350a8311c9c87fe076b5263f7e158f9b14", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000449362149e0000000000000000000000002626664c2603336e57b271c5c0b26f421741e481000000000000000000000000dbcdba358a804dc388f33ffbd7fa664cf689cabd00000000000000000000000000000000000000000000000000000000", + "blockHash": "0xd4ec2dd5b880cfb2e3a0bea8b4114e1800318dad07c63bbfd5837d957452877d", + "blockNumber": "0x2849e4a", + "blockTimestamp": "0x69939977", + "transactionHash": "0xd7ef03884b2d254da59a6d106c5167fd378c11c15163d532c099cc86bf6cbe96", + "transactionIndex": "0x85", + "logIndex": "0x70e", + "removed": false + } + ], + "logsBloom": "0x00000080000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000800000200000000020000000000000000000000800400000000000000000000000000000000000000002000000000020000000000000000000800000000000000000000000400000000000000008000000000000000000000000000000004000000000002001000000000000000000000000000000000000400000000000000000000000000000000000000000000000000080000004000000000000000000000000000000000000820100000000000000000000000000000040000000000000000010000000000000000", + "type": "0x2", + "transactionHash": "0xd7ef03884b2d254da59a6d106c5167fd378c11c15163d532c099cc86bf6cbe96", + "transactionIndex": "0x85", + "blockHash": "0xd4ec2dd5b880cfb2e3a0bea8b4114e1800318dad07c63bbfd5837d957452877d", + "blockNumber": "0x2849e4a", + "gasUsed": "0x1d48a", + "effectiveGasPrice": "0x40e374", + "blobGasUsed": "0x5bc3", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x1e8c05", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x1fcaa1d1", + "l1GasPrice": "0x1b5c8f4", + "l1GasUsed": "0xa90" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1771280763399, + "chain": 8453, + "commit": "19e389e" +} \ No newline at end of file diff --git a/broadcast/RegisterVault.s.sol/8453/run-1771280810476.json b/broadcast/RegisterVault.s.sol/8453/run-1771280810476.json new file mode 100644 index 0000000..dccb055 --- /dev/null +++ b/broadcast/RegisterVault.s.sol/8453/run-1771280810476.json @@ -0,0 +1,176 @@ +{ + "transactions": [ + { + "hash": "0x4d2ac1ee438165171c45a6939cceaa4cf3c9d7c46f9eb4cce4dd7dc416c0c4dd", + "transactionType": "CALL", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "schedule(address,uint256,bytes,bytes32,bytes32,uint256)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e000000000000000000000000cf77a3ba9a5ca399b7c97c74d54e5b1beb874e4300000000000000000000000001fe6834fa3af286d6c568dc868ceec08f7dad20", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xefe102ba007ea4c809390682ca614db70128e529cd817a8b9f7c9fbbff2c9dc0", + "0" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x14480", + "value": "0x0", + "input": "0x01d5062a0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000000efe102ba007ea4c809390682ca614db70128e529cd817a8b9f7c9fbbff2c9dc0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000cf77a3ba9a5ca399b7c97c74d54e5b1beb874e4300000000000000000000000001fe6834fa3af286d6c568dc868ceec08f7dad2000000000000000000000000000000000000000000000000000000000", + "nonce": "0x37", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x1d5a7dfb9e5d6c282fbcadee049f88852350d633ab5c3c928ecfd2772575ecbf", + "transactionType": "CALL", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "execute(address,uint256,bytes,bytes32,bytes32)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e000000000000000000000000cf77a3ba9a5ca399b7c97c74d54e5b1beb874e4300000000000000000000000001fe6834fa3af286d6c568dc868ceec08f7dad20", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xefe102ba007ea4c809390682ca614db70128e529cd817a8b9f7c9fbbff2c9dc0" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x28719", + "value": "0x0", + "input": "0x134008d30000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000efe102ba007ea4c809390682ca614db70128e529cd817a8b9f7c9fbbff2c9dc000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000cf77a3ba9a5ca399b7c97c74d54e5b1beb874e4300000000000000000000000001fe6834fa3af286d6c568dc868ceec08f7dad2000000000000000000000000000000000000000000000000000000000", + "nonce": "0x38", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x2389508", + "logs": [ + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0x7e131900d8e60212c01da7bb351de37477d0bb3176f442769028122797e7fb66", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000cf77a3ba9a5ca399b7c97c74d54e5b1beb874e4300000000000000000000000001fe6834fa3af286d6c568dc868ceec08f7dad2000000000000000000000000000000000000000000000000000000000", + "blockHash": "0x2b9853504e6f6bfb379eb909732f20a165e926b86df2bd2b97216ecd01e2ff39", + "blockNumber": "0x2849e62", + "blockTimestamp": "0x699399a7", + "transactionHash": "0x4d2ac1ee438165171c45a6939cceaa4cf3c9d7c46f9eb4cce4dd7dc416c0c4dd", + "transactionIndex": "0xd7", + "logIndex": "0x3f5", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", + "0x7e131900d8e60212c01da7bb351de37477d0bb3176f442769028122797e7fb66" + ], + "data": "0xefe102ba007ea4c809390682ca614db70128e529cd817a8b9f7c9fbbff2c9dc0", + "blockHash": "0x2b9853504e6f6bfb379eb909732f20a165e926b86df2bd2b97216ecd01e2ff39", + "blockNumber": "0x2849e62", + "blockTimestamp": "0x699399a7", + "transactionHash": "0x4d2ac1ee438165171c45a6939cceaa4cf3c9d7c46f9eb4cce4dd7dc416c0c4dd", + "transactionIndex": "0xd7", + "logIndex": "0x3f6", + "removed": false + } + ], + "logsBloom": "0x00000080000000000000000040000000200000000000000000000000000000000000000000000000000000000000000100000000800000000000000000000000000000000000000000800000000000000000000000000008000000000000000000004000020000000000000000000800000080000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000020000000000000002000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x4d2ac1ee438165171c45a6939cceaa4cf3c9d7c46f9eb4cce4dd7dc416c0c4dd", + "transactionIndex": "0xd7", + "blockHash": "0x2b9853504e6f6bfb379eb909732f20a165e926b86df2bd2b97216ecd01e2ff39", + "blockNumber": "0x2849e62", + "gasUsed": "0xdde2", + "effectiveGasPrice": "0x468a1a", + "blobGasUsed": "0x5c4e", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x1c3d77", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x1f27362f", + "l1GasPrice": "0x1d18225", + "l1GasUsed": "0xaab" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x23a6986", + "logs": [ + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0x1cf35c87329e14a81fdc68af8a463c1db203ccfc925ff5150f5dbc71bc4c2372", + "0x000000000000000000000000cf77a3ba9a5ca399b7c97c74d54e5b1beb874e43", + "0x00000000000000000000000001fe6834fa3af286d6c568dc868ceec08f7dad20" + ], + "data": "0x", + "blockHash": "0x2b9853504e6f6bfb379eb909732f20a165e926b86df2bd2b97216ecd01e2ff39", + "blockNumber": "0x2849e62", + "blockTimestamp": "0x699399a7", + "transactionHash": "0x1d5a7dfb9e5d6c282fbcadee049f88852350d633ab5c3c928ecfd2772575ecbf", + "transactionIndex": "0xd8", + "logIndex": "0x3f7", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0x7e131900d8e60212c01da7bb351de37477d0bb3176f442769028122797e7fb66", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000cf77a3ba9a5ca399b7c97c74d54e5b1beb874e4300000000000000000000000001fe6834fa3af286d6c568dc868ceec08f7dad2000000000000000000000000000000000000000000000000000000000", + "blockHash": "0x2b9853504e6f6bfb379eb909732f20a165e926b86df2bd2b97216ecd01e2ff39", + "blockNumber": "0x2849e62", + "blockTimestamp": "0x699399a7", + "transactionHash": "0x1d5a7dfb9e5d6c282fbcadee049f88852350d633ab5c3c928ecfd2772575ecbf", + "transactionIndex": "0xd8", + "logIndex": "0x3f8", + "removed": false + } + ], + "logsBloom": "0x000000800000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000008000002000000000000000000000000000000008000000000000000000000000000000000000000000020000040000200000000000000000008000000000000000000000004000000000000000080000000000000000000040000000000040000000000000012000000010000000000000000000000000000000000000000000000000000000000000000000000000040000a0000000000000000000000000000000100000000000020100000000000002000000000000000000000000000000000010000000000000000", + "type": "0x2", + "transactionHash": "0x1d5a7dfb9e5d6c282fbcadee049f88852350d633ab5c3c928ecfd2772575ecbf", + "transactionIndex": "0xd8", + "blockHash": "0x2b9853504e6f6bfb379eb909732f20a165e926b86df2bd2b97216ecd01e2ff39", + "blockNumber": "0x2849e62", + "gasUsed": "0x1d47e", + "effectiveGasPrice": "0x468a1a", + "blobGasUsed": "0x5bc3", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x1c3d77", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x1ed90ede", + "l1GasPrice": "0x1d18225", + "l1GasUsed": "0xa90" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1771280810476, + "chain": 8453, + "commit": "19e389e" +} \ No newline at end of file diff --git a/broadcast/RegisterVault.s.sol/8453/run-1771280886722.json b/broadcast/RegisterVault.s.sol/8453/run-1771280886722.json new file mode 100644 index 0000000..db024d8 --- /dev/null +++ b/broadcast/RegisterVault.s.sol/8453/run-1771280886722.json @@ -0,0 +1,176 @@ +{ + "transactions": [ + { + "hash": "0x3fe03a7d069dc1787d62283e1448eca2852ccf515eaf63381ee0cb4e67908645", + "transactionType": "CALL", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "schedule(address,uint256,bytes,bytes32,bytes32,uint256)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5000000000000000000000000840974f44d2738661703292ccf339c404a864ac4", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xb90f26b483eee961dbc78842887cb135b6a43158daf73bee3e6e2be048b7d09f", + "0" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x13289", + "value": "0x0", + "input": "0x01d5062a0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000000b90f26b483eee961dbc78842887cb135b6a43158daf73bee3e6e2be048b7d09f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5000000000000000000000000840974f44d2738661703292ccf339c404a864ac400000000000000000000000000000000000000000000000000000000", + "nonce": "0x39", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x7a8afeff3c9a366e665103c20426d382f64e4631b7a608817d303acc86595300", + "transactionType": "CALL", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "function": "execute(address,uint256,bytes,bytes32,bytes32)", + "arguments": [ + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "0", + "0x9362149e000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5000000000000000000000000840974f44d2738661703292ccf339c404a864ac4", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xb90f26b483eee961dbc78842887cb135b6a43158daf73bee3e6e2be048b7d09f" + ], + "transaction": { + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "gas": "0x2ad3c", + "value": "0x0", + "input": "0x134008d30000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000b90f26b483eee961dbc78842887cb135b6a43158daf73bee3e6e2be048b7d09f00000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5000000000000000000000000840974f44d2738661703292ccf339c404a864ac400000000000000000000000000000000000000000000000000000000", + "nonce": "0x3a", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x1935556", + "logs": [ + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", + "0xb8221cba93d05a01a024527084e85680f4ba32e7fd4e390521844dab76772001", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5000000000000000000000000840974f44d2738661703292ccf339c404a864ac400000000000000000000000000000000000000000000000000000000", + "blockHash": "0xe07eed7776e2da83680e3b8b210a8b8aa185fd7a8aa21a8617f16be2f967f423", + "blockNumber": "0x2849e88", + "blockTimestamp": "0x699399f3", + "transactionHash": "0x7a8afeff3c9a366e665103c20426d382f64e4631b7a608817d303acc86595300", + "transactionIndex": "0x45", + "logIndex": "0x269", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", + "0xb8221cba93d05a01a024527084e85680f4ba32e7fd4e390521844dab76772001" + ], + "data": "0xb90f26b483eee961dbc78842887cb135b6a43158daf73bee3e6e2be048b7d09f", + "blockHash": "0xe07eed7776e2da83680e3b8b210a8b8aa185fd7a8aa21a8617f16be2f967f423", + "blockNumber": "0x2849e88", + "blockTimestamp": "0x699399f3", + "transactionHash": "0x7a8afeff3c9a366e665103c20426d382f64e4631b7a608817d303acc86595300", + "transactionIndex": "0x45", + "logIndex": "0x26a", + "removed": false + } + ], + "logsBloom": "0x00000080000000000000000040000000000000000000000200000000000000000000000000000000000000000000000100000000800000000000000000000000000000000000000000800000000000000000000000000008000000000000000000000000020000000000020000000800000080000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000400000000000000020000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "transactionHash": "0x7a8afeff3c9a366e665103c20426d382f64e4631b7a608817d303acc86595300", + "transactionIndex": "0x45", + "blockHash": "0xe07eed7776e2da83680e3b8b210a8b8aa185fd7a8aa21a8617f16be2f967f423", + "blockNumber": "0x2849e88", + "gasUsed": "0xddee", + "effectiveGasPrice": "0x43ab7a", + "blobGasUsed": "0x5cd9", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x1f5b67", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x231f7714", + "l1GasPrice": "0x213c219", + "l1GasUsed": "0xab8" + }, + { + "status": "0x1", + "cumulativeGasUsed": "0x19529e0", + "logs": [ + { + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", + "topics": [ + "0x1cf35c87329e14a81fdc68af8a463c1db203ccfc925ff5150f5dbc71bc4c2372", + "0x000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5", + "0x000000000000000000000000840974f44d2738661703292ccf339c404a864ac4" + ], + "data": "0x", + "blockHash": "0xe07eed7776e2da83680e3b8b210a8b8aa185fd7a8aa21a8617f16be2f967f423", + "blockNumber": "0x2849e88", + "blockTimestamp": "0x699399f3", + "transactionHash": "0x3fe03a7d069dc1787d62283e1448eca2852ccf515eaf63381ee0cb4e67908645", + "transactionIndex": "0x46", + "logIndex": "0x26b", + "removed": false + }, + { + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "topics": [ + "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", + "0xb8221cba93d05a01a024527084e85680f4ba32e7fd4e390521844dab76772001", + "0x0000000000000000000000000000000000000000000000000000000000000000" + ], + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5000000000000000000000000840974f44d2738661703292ccf339c404a864ac400000000000000000000000000000000000000000000000000000000", + "blockHash": "0xe07eed7776e2da83680e3b8b210a8b8aa185fd7a8aa21a8617f16be2f967f423", + "blockNumber": "0x2849e88", + "blockTimestamp": "0x699399f3", + "transactionHash": "0x3fe03a7d069dc1787d62283e1448eca2852ccf515eaf63381ee0cb4e67908645", + "transactionIndex": "0x46", + "logIndex": "0x26c", + "removed": false + } + ], + "logsBloom": "0x00080080000000000000000000000000000000000000000200000000000000000000000000000000000000000000000100000000000800000200000000000000000000000000000000800000400000000000040000000000000000000000002000000000020000000000020000000800000000000000000000000400000080000000008000000000000000000000000000000004000000000000001000000000000000000000000000000000000000000000000000000000000800000000000000000000000000080000000080000000000000000000000000000000000020100000000000000000000000000000000000000000000000010000000000000000", + "type": "0x2", + "transactionHash": "0x3fe03a7d069dc1787d62283e1448eca2852ccf515eaf63381ee0cb4e67908645", + "transactionIndex": "0x46", + "blockHash": "0xe07eed7776e2da83680e3b8b210a8b8aa185fd7a8aa21a8617f16be2f967f423", + "blockNumber": "0x2849e88", + "gasUsed": "0x1d48a", + "effectiveGasPrice": "0x43ab7a", + "blobGasUsed": "0x5bc3", + "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", + "contractAddress": null, + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x1f5b67", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x229bf0e2", + "l1GasPrice": "0x213c219", + "l1GasUsed": "0xa90" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1771280886722, + "chain": 8453, + "commit": "19e389e" +} \ No newline at end of file diff --git a/broadcast/RegisterVault.s.sol/8453/run-latest.json b/broadcast/RegisterVault.s.sol/8453/run-latest.json index c81aa6f..4429fbe 100644 --- a/broadcast/RegisterVault.s.sol/8453/run-latest.json +++ b/broadcast/RegisterVault.s.sol/8453/run-latest.json @@ -1,51 +1,51 @@ { "transactions": [ { - "hash": "0x02ad712190b539e26284035d1fa13c588701eefdff877121fe133ce5357048f2", + "hash": "0x3fe03a7d069dc1787d62283e1448eca2852ccf515eaf63381ee0cb4e67908645", "transactionType": "CALL", - "contractName": null, - "contractAddress": "0x60163d6406503426e712ed6c507137229552756d", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", "function": "schedule(address,uint256,bytes,bytes32,bytes32,uint256)", "arguments": [ - "0x81f17748B0abE955790346B904f6B78E67594ed0", + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", "0", - "0x9362149e000000000000000000000000944766f715b51967e56afde5f0aa76ceacc9e7f9000000000000000000000000905cd24370018befb6c648420d35dfeba9e62602", + "0x9362149e000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5000000000000000000000000840974f44d2738661703292ccf339c404a864ac4", "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x7e423dda6218c530071c65008a4c32045b3e34b42c05c16aaf80e3d5ee9f86ef", + "0xb90f26b483eee961dbc78842887cb135b6a43158daf73bee3e6e2be048b7d09f", "0" ], "transaction": { "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x60163d6406503426e712ed6c507137229552756d", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", "gas": "0x13289", "value": "0x0", - "input": "0x01d5062a00000000000000000000000081f17748b0abe955790346b904f6b78e67594ed0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000007e423dda6218c530071c65008a4c32045b3e34b42c05c16aaf80e3d5ee9f86ef000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000944766f715b51967e56afde5f0aa76ceacc9e7f9000000000000000000000000905cd24370018befb6c648420d35dfeba9e6260200000000000000000000000000000000000000000000000000000000", - "nonce": "0x16", + "input": "0x01d5062a0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000000b90f26b483eee961dbc78842887cb135b6a43158daf73bee3e6e2be048b7d09f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5000000000000000000000000840974f44d2738661703292ccf339c404a864ac400000000000000000000000000000000000000000000000000000000", + "nonce": "0x39", "chainId": "0x2105" }, "additionalContracts": [], "isFixedGasLimit": false }, { - "hash": "0xa852262892b55dce458756ac714e27abe49aa0f08517c34f011df6b3e944d8ae", + "hash": "0x7a8afeff3c9a366e665103c20426d382f64e4631b7a608817d303acc86595300", "transactionType": "CALL", - "contractName": null, - "contractAddress": "0x60163d6406503426e712ed6c507137229552756d", + "contractName": "YieldSeekerAdminTimelock", + "contractAddress": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", "function": "execute(address,uint256,bytes,bytes32,bytes32)", "arguments": [ - "0x81f17748B0abE955790346B904f6B78E67594ed0", + "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", "0", - "0x9362149e000000000000000000000000944766f715b51967e56afde5f0aa76ceacc9e7f9000000000000000000000000905cd24370018befb6c648420d35dfeba9e62602", + "0x9362149e000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5000000000000000000000000840974f44d2738661703292ccf339c404a864ac4", "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x7e423dda6218c530071c65008a4c32045b3e34b42c05c16aaf80e3d5ee9f86ef" + "0xb90f26b483eee961dbc78842887cb135b6a43158daf73bee3e6e2be048b7d09f" ], "transaction": { "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x60163d6406503426e712ed6c507137229552756d", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", "gas": "0x2ad3c", "value": "0x0", - "input": "0x134008d300000000000000000000000081f17748b0abe955790346b904f6b78e67594ed0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000007e423dda6218c530071c65008a4c32045b3e34b42c05c16aaf80e3d5ee9f86ef00000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000944766f715b51967e56afde5f0aa76ceacc9e7f9000000000000000000000000905cd24370018befb6c648420d35dfeba9e6260200000000000000000000000000000000000000000000000000000000", - "nonce": "0x17", + "input": "0x134008d30000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000b90f26b483eee961dbc78842887cb135b6a43158daf73bee3e6e2be048b7d09f00000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5000000000000000000000000840974f44d2738661703292ccf339c404a864ac400000000000000000000000000000000000000000000000000000000", + "nonce": "0x3a", "chainId": "0x2105" }, "additionalContracts": [], @@ -55,122 +55,122 @@ "receipts": [ { "status": "0x1", - "cumulativeGasUsed": "0x16051f3", + "cumulativeGasUsed": "0x1935556", "logs": [ { - "address": "0x60163d6406503426e712ed6c507137229552756d", + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", "topics": [ "0x4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca", - "0x0daf49907523ec0a80c0a4fc6462a7ebe6f6cd2dce5a51547f4863cf5fbbb581", + "0xb8221cba93d05a01a024527084e85680f4ba32e7fd4e390521844dab76772001", "0x0000000000000000000000000000000000000000000000000000000000000000" ], - "data": "0x00000000000000000000000081f17748b0abe955790346b904f6b78e67594ed0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000944766f715b51967e56afde5f0aa76ceacc9e7f9000000000000000000000000905cd24370018befb6c648420d35dfeba9e6260200000000000000000000000000000000000000000000000000000000", - "blockHash": "0xf32796caa861f3737dc3d6986103fcc6ef3bba9e6687c4f16426a54e201ecd66", - "blockNumber": "0x277c6c1", - "blockTimestamp": "0x6979ea65", - "transactionHash": "0x02ad712190b539e26284035d1fa13c588701eefdff877121fe133ce5357048f2", - "transactionIndex": "0x7a", - "logIndex": "0x24c", + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5000000000000000000000000840974f44d2738661703292ccf339c404a864ac400000000000000000000000000000000000000000000000000000000", + "blockHash": "0xe07eed7776e2da83680e3b8b210a8b8aa185fd7a8aa21a8617f16be2f967f423", + "blockNumber": "0x2849e88", + "blockTimestamp": "0x699399f3", + "transactionHash": "0x7a8afeff3c9a366e665103c20426d382f64e4631b7a608817d303acc86595300", + "transactionIndex": "0x45", + "logIndex": "0x269", "removed": false }, { - "address": "0x60163d6406503426e712ed6c507137229552756d", + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", "topics": [ "0x20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387", - "0x0daf49907523ec0a80c0a4fc6462a7ebe6f6cd2dce5a51547f4863cf5fbbb581" + "0xb8221cba93d05a01a024527084e85680f4ba32e7fd4e390521844dab76772001" ], - "data": "0x7e423dda6218c530071c65008a4c32045b3e34b42c05c16aaf80e3d5ee9f86ef", - "blockHash": "0xf32796caa861f3737dc3d6986103fcc6ef3bba9e6687c4f16426a54e201ecd66", - "blockNumber": "0x277c6c1", - "blockTimestamp": "0x6979ea65", - "transactionHash": "0x02ad712190b539e26284035d1fa13c588701eefdff877121fe133ce5357048f2", - "transactionIndex": "0x7a", - "logIndex": "0x24d", + "data": "0xb90f26b483eee961dbc78842887cb135b6a43158daf73bee3e6e2be048b7d09f", + "blockHash": "0xe07eed7776e2da83680e3b8b210a8b8aa185fd7a8aa21a8617f16be2f967f423", + "blockNumber": "0x2849e88", + "blockTimestamp": "0x699399f3", + "transactionHash": "0x7a8afeff3c9a366e665103c20426d382f64e4631b7a608817d303acc86595300", + "transactionIndex": "0x45", + "logIndex": "0x26a", "removed": false } ], - "logsBloom": "0x00000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000100000000800000000000000000000000000000800000000000000000000000000000000000000008000000000000000000080000020000000000000000000800000080000000000000000000000000000000000000040040000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000020000000000000800000000000000000000000000000000000000000000000000000", + "logsBloom": "0x00000080000000000000000040000000000000000000000200000000000000000000000000000000000000000000000100000000800000000000000000000000000000000000000000800000000000000000000000000008000000000000000000000000020000000000020000000800000080000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000400000000000000020000000000000000000000000000000000000000000000000000000000000000000", "type": "0x2", - "transactionHash": "0x02ad712190b539e26284035d1fa13c588701eefdff877121fe133ce5357048f2", - "transactionIndex": "0x7a", - "blockHash": "0xf32796caa861f3737dc3d6986103fcc6ef3bba9e6687c4f16426a54e201ecd66", - "blockNumber": "0x277c6c1", + "transactionHash": "0x7a8afeff3c9a366e665103c20426d382f64e4631b7a608817d303acc86595300", + "transactionIndex": "0x45", + "blockHash": "0xe07eed7776e2da83680e3b8b210a8b8aa185fd7a8aa21a8617f16be2f967f423", + "blockNumber": "0x2849e88", "gasUsed": "0xddee", - "effectiveGasPrice": "0x1342ee", - "blobGasUsed": "0x5d64", + "effectiveGasPrice": "0x43ab7a", + "blobGasUsed": "0x5cd9", "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x60163d6406503426e712ed6c507137229552756d", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", "contractAddress": null, "daFootprintGasScalar": "0x8b", "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x70eb6a", + "l1BlobBaseFee": "0x1f5b67", "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x817ddb0b", - "l1GasPrice": "0x7dcd636", - "l1GasUsed": "0xac6" + "l1Fee": "0x231f7714", + "l1GasPrice": "0x213c219", + "l1GasUsed": "0xab8" }, { "status": "0x1", - "cumulativeGasUsed": "0x1994e31", + "cumulativeGasUsed": "0x19529e0", "logs": [ { - "address": "0x81f17748b0abe955790346b904f6b78e67594ed0", + "address": "0x0021c1fdd50aa76fb59afe3fc3a38c02c257bdca", "topics": [ "0x1cf35c87329e14a81fdc68af8a463c1db203ccfc925ff5150f5dbc71bc4c2372", - "0x000000000000000000000000944766f715b51967e56afde5f0aa76ceacc9e7f9", - "0x000000000000000000000000905cd24370018befb6c648420d35dfeba9e62602" + "0x000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5", + "0x000000000000000000000000840974f44d2738661703292ccf339c404a864ac4" ], "data": "0x", - "blockHash": "0xf32796caa861f3737dc3d6986103fcc6ef3bba9e6687c4f16426a54e201ecd66", - "blockNumber": "0x277c6c1", - "blockTimestamp": "0x6979ea65", - "transactionHash": "0xa852262892b55dce458756ac714e27abe49aa0f08517c34f011df6b3e944d8ae", - "transactionIndex": "0x94", - "logIndex": "0x292", + "blockHash": "0xe07eed7776e2da83680e3b8b210a8b8aa185fd7a8aa21a8617f16be2f967f423", + "blockNumber": "0x2849e88", + "blockTimestamp": "0x699399f3", + "transactionHash": "0x3fe03a7d069dc1787d62283e1448eca2852ccf515eaf63381ee0cb4e67908645", + "transactionIndex": "0x46", + "logIndex": "0x26b", "removed": false }, { - "address": "0x60163d6406503426e712ed6c507137229552756d", + "address": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", "topics": [ "0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58", - "0x0daf49907523ec0a80c0a4fc6462a7ebe6f6cd2dce5a51547f4863cf5fbbb581", + "0xb8221cba93d05a01a024527084e85680f4ba32e7fd4e390521844dab76772001", "0x0000000000000000000000000000000000000000000000000000000000000000" ], - "data": "0x00000000000000000000000081f17748b0abe955790346b904f6b78e67594ed00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000944766f715b51967e56afde5f0aa76ceacc9e7f9000000000000000000000000905cd24370018befb6c648420d35dfeba9e6260200000000000000000000000000000000000000000000000000000000", - "blockHash": "0xf32796caa861f3737dc3d6986103fcc6ef3bba9e6687c4f16426a54e201ecd66", - "blockNumber": "0x277c6c1", - "blockTimestamp": "0x6979ea65", - "transactionHash": "0xa852262892b55dce458756ac714e27abe49aa0f08517c34f011df6b3e944d8ae", - "transactionIndex": "0x94", - "logIndex": "0x293", + "data": "0x0000000000000000000000000021c1fdd50aa76fb59afe3fc3a38c02c257bdca0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000449362149e000000000000000000000000be6d8f0d05cc4be24d5167a3ef062215be6d18a5000000000000000000000000840974f44d2738661703292ccf339c404a864ac400000000000000000000000000000000000000000000000000000000", + "blockHash": "0xe07eed7776e2da83680e3b8b210a8b8aa185fd7a8aa21a8617f16be2f967f423", + "blockNumber": "0x2849e88", + "blockTimestamp": "0x699399f3", + "transactionHash": "0x3fe03a7d069dc1787d62283e1448eca2852ccf515eaf63381ee0cb4e67908645", + "transactionIndex": "0x46", + "logIndex": "0x26c", "removed": false } ], - "logsBloom": "0x00000000000000000000040400000000000000000000000000000000000000000000000000040000000000000000000000000000000800000200000000000000000000800000000000000000000000000000000000000000000000000400002000080000020000000000000000000800000000000000000000000000000000000000008000040040000000000000000000000200000000000000001002000000000000200000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000020000000000000800000000400020000000000000000000000000000000000000000", + "logsBloom": "0x00080080000000000000000000000000000000000000000200000000000000000000000000000000000000000000000100000000000800000200000000000000000000000000000000800000400000000000040000000000000000000000002000000000020000000000020000000800000000000000000000000400000080000000008000000000000000000000000000000004000000000000001000000000000000000000000000000000000000000000000000000000000800000000000000000000000000080000000080000000000000000000000000000000000020100000000000000000000000000000000000000000000000010000000000000000", "type": "0x2", - "transactionHash": "0xa852262892b55dce458756ac714e27abe49aa0f08517c34f011df6b3e944d8ae", - "transactionIndex": "0x94", - "blockHash": "0xf32796caa861f3737dc3d6986103fcc6ef3bba9e6687c4f16426a54e201ecd66", - "blockNumber": "0x277c6c1", + "transactionHash": "0x3fe03a7d069dc1787d62283e1448eca2852ccf515eaf63381ee0cb4e67908645", + "transactionIndex": "0x46", + "blockHash": "0xe07eed7776e2da83680e3b8b210a8b8aa185fd7a8aa21a8617f16be2f967f423", + "blockNumber": "0x2849e88", "gasUsed": "0x1d48a", - "effectiveGasPrice": "0x1342ee", + "effectiveGasPrice": "0x43ab7a", "blobGasUsed": "0x5bc3", "from": "0xf8cbf6437d2473ec59885299af38d9a13ce97eca", - "to": "0x60163d6406503426e712ed6c507137229552756d", + "to": "0x773541f7c38be8106ae966ca9d6fee494a0edd24", "contractAddress": null, "daFootprintGasScalar": "0x8b", "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x70eb6a", + "l1BlobBaseFee": "0x1f5b67", "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x7f9b4da5", - "l1GasPrice": "0x7dcd636", - "l1GasUsed": "0xa9e" + "l1Fee": "0x229bf0e2", + "l1GasPrice": "0x213c219", + "l1GasUsed": "0xa90" } ], "libraries": [], "pending": [], "returns": {}, - "timestamp": 1769597544062, + "timestamp": 1771280886722, "chain": 8453, - "commit": "c9fdc30" -} \ No newline at end of file + "commit": "19e389e" +} diff --git a/deployments.json b/deployments.json index a5e34bc..06e4bad 100644 --- a/deployments.json +++ b/deployments.json @@ -1,10 +1,16 @@ { - "adapterRegistry": "0x81f17748B0abE955790346B904f6B78E67594ed0", - "adminTimelock": "0x60163d6406503426E712eD6c507137229552756D", - "agentWalletFactory": "0x23AAFAeb5B78816dBCf20D503A73Cd9750A21d63", - "agentWalletImplementation": "0x0FE7ff9421839BD2cf4d0D959450F57491eA1109", - "erc4626Adapter": "0x905cD24370018BEFB6c648420D35DfeBA9e62602", - "feeTracker": "0xe128C4962c7d6b73197E04640b15896fcfacA7d5", - "merklAdapter": "0xd28d02F82A1D735C973b5b24c30ed7A56839Fb96", - "zeroXAdapter": "0x15a8067F0b38e29F7FcfFB93F85C585748D49d82" + "aaveV3Adapter": "0xC6b0eeFf559a23187506440f8C62F58aea02Fb4E", + "adapterRegistry": "0x0021c1fdD50aA76Fb59AFE3fC3A38C02c257bDcA", + "adminTimelock": "0x773541F7c38BE8106AE966CA9D6fee494a0eDD24", + "aerodromeCLSwapAdapter": "0x840974F44d2738661703292ccf339C404a864AC4", + "aerodromeV2SwapAdapter": "0x01Fe6834fA3af286D6C568DC868cEec08f7dad20", + "agentWalletFactory": "0x9900f8019b20e822E2D5897db246a376A9514C8F", + "agentWalletImplementation": "0x14283F733d6F73CA116EaA07af7c8C16b1Cef7e3", + "compoundV2Adapter": "0x976CeDeBd26e4D78cBfdb789186510aB9a5747e3", + "compoundV3Adapter": "0x65B65D4bF565b3Ba92371CCd0B157DA1BCb3b1A8", + "erc4626Adapter": "0x98474BE8d188F450FEf65b5C6d290D333eb74a2f", + "feeTracker": "0x2e11eDC25e5f2391Cd9225A7C107d1B41eBACc9F", + "merklAdapter": "0x063E92A335be85a7AE6d2De28397dcf40423c45f", + "swapSellPolicy": "0x2c61dC81bc40389FF11CE68e78E93a3F75e41b9c", + "uniswapV3SwapAdapter": "0xDBcDba358A804DC388f33fFBd7FA664Cf689CABD" } \ No newline at end of file diff --git a/script/AddSellableTokens.s.sol b/script/AddSellableTokens.s.sol new file mode 100644 index 0000000..15b4a69 --- /dev/null +++ b/script/AddSellableTokens.s.sol @@ -0,0 +1,103 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.28; + +import {YieldSeekerAdminTimelock as AdminTimelock} from "../src/AdminTimelock.sol"; +import {YieldSeekerSwapSellPolicy as SwapSellPolicy} from "../src/adapters/SwapSellPolicy.sol"; +import {Script} from "forge-std/Script.sol"; +import {stdJson} from "forge-std/StdJson.sol"; +import {console2} from "forge-std/console2.sol"; + +/** + * @title AddSellableTokensScript + * @notice Helper script to add sellable tokens to the swap sell policy allowlist via timelock + * @dev Usage: + * forge script script/AddSellableTokens.s.sol:AddSellableTokensScript \ + * --rpc-url $RPC_NODE_URL_8453 \ + * --broadcast \ + * --sig "run(address[])" \ + * "[,,...]" + * + * Example (single token): + * forge script script/AddSellableTokens.s.sol:AddSellableTokensScript \ + * --rpc-url $RPC_NODE_URL_8453 \ + * --broadcast \ + * --sig "run(address[])" \ + * "[0x590830dFDf9A3F68aFCDdE2694773dEBDF267774]" + * + * Example (multiple tokens): + * forge script script/AddSellableTokens.s.sol:AddSellableTokensScript \ + * --rpc-url $RPC_NODE_URL_8453 \ + * --broadcast \ + * --sig "run(address[])" \ + * "[0x590830dFDf9A3F68aFCDdE2694773dEBDF267774,0xBAa5CC21fd487B8Fcc2F632f3F4E8D37262a0842]" + */ +contract AddSellableTokensScript is Script { + using stdJson for string; + + function run(address[] memory tokens) public { + require(tokens.length > 0, "No tokens provided"); + + uint256 deployerPrivateKey = vm.envUint("DEPLOYER_PRIVATE_KEY"); + + // forge-lint: disable-next-line(unsafe-cheatcode) + string memory json = vm.readFile("./deployments.json"); + address sellPolicyAddress = json.readAddress(".swapSellPolicy"); + address timelockAddress = json.readAddress(".adminTimelock"); + + SwapSellPolicy sellPolicy = SwapSellPolicy(sellPolicyAddress); + AdminTimelock timelock = AdminTimelock(payable(timelockAddress)); + uint256 delay = timelock.getMinDelay(); + + console2.log("================================================="); + console2.log("ADD SELLABLE TOKENS"); + console2.log("================================================="); + console2.log("Swap Sell Policy:", sellPolicyAddress); + console2.log("Timelock:", timelockAddress); + console2.log("Tokens to add:", tokens.length); + console2.log(""); + + for (uint256 i = 0; i < tokens.length; i++) { + require(tokens[i] != address(0), "Invalid token address"); + bool alreadySellable = sellPolicy.isSellableToken(tokens[i]); + console2.log("Token:", tokens[i], alreadySellable ? "(already sellable)" : "(new)"); + } + + bytes32 salt = keccak256(abi.encodePacked("add-sellable-tokens-", abi.encode(tokens))); + bytes memory data = abi.encodeCall(sellPolicy.addSellableTokens, (tokens)); + + console2.log(""); + vm.startBroadcast(deployerPrivateKey); + console2.log("-> Scheduling addSellableTokens via timelock..."); + timelock.schedule(sellPolicyAddress, 0, data, bytes32(0), salt, delay); + + if (delay == 0) { + console2.log("-> Executing immediately (testing mode)..."); + timelock.execute(sellPolicyAddress, 0, data, bytes32(0), salt); + console2.log("-> Sellable tokens added successfully!"); + } else { + console2.log("-> Scheduled successfully!"); + console2.log("-> Delay:", delay, "seconds"); + console2.log("-> Execute after delay with:"); + console2.log(""); + console2.log("cast send", timelockAddress); + console2.log(' "execute(address,uint256,bytes,bytes32,bytes32)"'); + console2.log(" ", sellPolicyAddress); + console2.log(" 0"); + console2.log(" ", vm.toString(data)); + console2.log(" 0x0000000000000000000000000000000000000000000000000000000000000000"); + console2.log(" ", vm.toString(salt)); + console2.log(" --rpc-url $RPC_NODE_URL_8453 \\"); + console2.log(" --private-key $DEPLOYER_PRIVATE_KEY"); + } + + vm.stopBroadcast(); + + console2.log(""); + console2.log("Current sellable tokens:"); + address[] memory allSellable = sellPolicy.getSellableTokens(); + for (uint256 i = 0; i < allSellable.length; i++) { + console2.log(" ", allSellable[i]); + } + console2.log("================================================="); + } +} diff --git a/script/Deploy.s.sol b/script/Deploy.s.sol index 7b7fafc..81f6bdc 100644 --- a/script/Deploy.s.sol +++ b/script/Deploy.s.sol @@ -7,11 +7,14 @@ import {YieldSeekerAgentWalletFactory as AgentWalletFactory} from "../src/AgentW import {YieldSeekerAgentWalletV1 as AgentWallet} from "../src/AgentWalletV1.sol"; import {YieldSeekerFeeTracker as FeeTracker} from "../src/FeeTracker.sol"; import {YieldSeekerAaveV3Adapter as AaveV3Adapter} from "../src/adapters/AaveV3Adapter.sol"; +import {YieldSeekerAerodromeCLSwapAdapter as AerodromeCLSwapAdapter} from "../src/adapters/AerodromeCLSwapAdapter.sol"; +import {YieldSeekerAerodromeV2SwapAdapter as AerodromeV2SwapAdapter} from "../src/adapters/AerodromeV2SwapAdapter.sol"; import {YieldSeekerCompoundV2Adapter as CompoundV2Adapter} from "../src/adapters/CompoundV2Adapter.sol"; import {YieldSeekerCompoundV3Adapter as CompoundV3Adapter} from "../src/adapters/CompoundV3Adapter.sol"; import {YieldSeekerERC4626Adapter as ERC4626Adapter} from "../src/adapters/ERC4626Adapter.sol"; import {YieldSeekerMerklAdapter as MerklAdapter} from "../src/adapters/MerklAdapter.sol"; -import {YieldSeekerZeroXAdapter as ZeroXAdapter} from "../src/adapters/ZeroXAdapter.sol"; +import {YieldSeekerSwapSellPolicy as SwapSellPolicy} from "../src/adapters/SwapSellPolicy.sol"; +import {YieldSeekerUniswapV3SwapAdapter as UniswapV3SwapAdapter} from "../src/adapters/UniswapV3SwapAdapter.sol"; import {Script} from "forge-std/Script.sol"; import {stdJson} from "forge-std/StdJson.sol"; import {console2} from "forge-std/console2.sol"; @@ -20,23 +23,6 @@ import {console2} from "forge-std/console2.sol"; * @title DeployScript * @notice Deploys the YieldSeeker AgentWallet system with selective contract deployment. * @dev Usage: forge script script/Deploy.s.sol:DeployScript --rpc-url --broadcast - * - * SELECTIVE DEPLOYMENT: - * This script reads from deployments.json and only deploys contracts with address(0) entries. - * To redeploy a specific contract, set its address to 0x0000000000000000000000000000000000000000 in deployments.json, then re-run. - * - * Example deployments.json: - * { - * "adminTimelock": "0x0000000000000000000000000000000000000000", - * "agentWalletFactory": "0x0000000000000000000000000000000000000000", - * "adapterRegistry": "0x0000000000000000000000000000000000000000", - * "agentWalletImplementation": "0x0000000000000000000000000000000000000000", - * "feeTracker": "0x0000000000000000000000000000000000000000", - * "erc4626Adapter": "0x0000000000000000000000000000000000000000", - * "zeroXAdapter": "0x0000000000000000000000000000000000000000" - * } - * - * In this example, only the Factory and Implementation would be redeployed. */ contract DeployScript is Script { using stdJson for string; @@ -44,23 +30,12 @@ contract DeployScript is Script { address constant ENTRYPOINT = 0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789; // Deployment Salt for deterministic addresses - uint256 constant SALT = 0x6; + uint256 constant SALT = 0x7; // Testing Mode: Set to true to deploy with 0-delay adminTimelock for faster testing // Set to false for production (uses 72-hour delay) bool constant TESTING_MODE = true; - /** - * @notice Get 0x AllowanceHolder address for a given chain - * @dev See https://github.com/0xProject/0x-settler/blob/master/README.md#allowanceholder-addresses - * AllowanceHolder serves as BOTH the allowance target and entry point for swaps. - */ - function getZeroXAllowanceTarget(uint256 chainId) internal pure returns (address) { - if (chainId == 8453) return 0x0000000000001fF3684f28c67538d4D072C22734; // Base - if (chainId == 84532) return 0x0000000000001fF3684f28c67538d4D072C22734; // Base Sepolia - revert("Unsupported chain for 0x"); - } - // State tracking struct Deployments { address adminTimelock; @@ -70,7 +45,10 @@ contract DeployScript is Script { address feeTracker; address erc4626Adapter; address merklAdapter; - address zeroXAdapter; + address swapSellPolicy; + address uniswapV3SwapAdapter; + address aerodromeV2SwapAdapter; + address aerodromeClSwapAdapter; address aaveV3Adapter; address compoundV3Adapter; address compoundV2Adapter; @@ -87,10 +65,42 @@ contract DeployScript is Script { } } + function getUniswapV3Router(uint256 chainId) internal pure returns (address) { + if (chainId == 8453) { + return 0x2626664c2603336E57B271c5C0b26F421741e481; + } + revert(string.concat("Unsupported chain id for Uniswap V3 router: ", vm.toString(chainId))); + } + + function getAerodromeV2Router(uint256 chainId) internal pure returns (address) { + if (chainId == 8453) { + return 0xcF77a3Ba9A5CA399B7c97c74d54e5b1Beb874E43; + } + revert(string.concat("Unsupported chain id for Aerodrome V2 router: ", vm.toString(chainId))); + } + + function getAerodromeV2Factory(uint256 chainId) internal pure returns (address) { + if (chainId == 8453) { + return 0x420DD381b31aEf6683db6B902084cB0FFECe40Da; + } + revert(string.concat("Unsupported chain id for Aerodrome V2 factory: ", vm.toString(chainId))); + } + + function getAerodromeClRouter(uint256 chainId) internal pure returns (address) { + if (chainId == 8453) { + return 0xBE6D8f0d05cC4be24d5167a3eF062215bE6D18a5; + } + revert(string.concat("Unsupported chain id for Aerodrome CL router: ", vm.toString(chainId))); + } + function run() public { address serverAddress = vm.envAddress("SERVER_ADDRESS"); uint256 deployerPrivateKey = vm.envUint("DEPLOYER_PRIVATE_KEY"); address deployerAddress = vm.addr(deployerPrivateKey); + address uniswapV3Router = getUniswapV3Router(block.chainid); + address aerodromeV2Router = getAerodromeV2Router(block.chainid); + address aerodromeV2Factory = getAerodromeV2Factory(block.chainid); + address aerodromeClRouter = getAerodromeClRouter(block.chainid); console2.log("================================================="); console2.log("YIELDSEEKER DEPLOYMENT SCRIPT"); @@ -114,7 +124,10 @@ contract DeployScript is Script { feeTracker: safeReadAddress(deployJson, ".feeTracker"), erc4626Adapter: safeReadAddress(deployJson, ".erc4626Adapter"), merklAdapter: safeReadAddress(deployJson, ".merklAdapter"), - zeroXAdapter: safeReadAddress(deployJson, ".zeroXAdapter"), + swapSellPolicy: safeReadAddress(deployJson, ".swapSellPolicy"), + uniswapV3SwapAdapter: safeReadAddress(deployJson, ".uniswapV3SwapAdapter"), + aerodromeV2SwapAdapter: safeReadAddress(deployJson, ".aerodromeV2SwapAdapter"), + aerodromeClSwapAdapter: safeReadAddress(deployJson, ".aerodromeCLSwapAdapter"), aaveV3Adapter: safeReadAddress(deployJson, ".aaveV3Adapter"), compoundV3Adapter: safeReadAddress(deployJson, ".compoundV3Adapter"), compoundV2Adapter: safeReadAddress(deployJson, ".compoundV2Adapter") @@ -193,16 +206,36 @@ contract DeployScript is Script { console2.log("-> Using existing merklAdapter:", deployments.merklAdapter); } - // Deploy or reuse ZeroX Adapter - address zeroXAllowanceTarget = getZeroXAllowanceTarget(block.chainid); - if (deployments.zeroXAdapter == address(0)) { - ZeroXAdapter zeroXAdapter = new ZeroXAdapter{salt: bytes32(SALT)}(zeroXAllowanceTarget); - deployments.zeroXAdapter = address(zeroXAdapter); - console2.log("-> ZeroXAdapter deployed at:", address(zeroXAdapter)); - console2.log(" allowanceTarget:", zeroXAllowanceTarget); + if (deployments.swapSellPolicy == address(0)) { + SwapSellPolicy swapSellPolicy = new SwapSellPolicy{salt: bytes32(SALT)}(deployments.adminTimelock, deployerAddress, false); + deployments.swapSellPolicy = address(swapSellPolicy); + console2.log("-> SwapSellPolicy deployed at:", address(swapSellPolicy)); } else { - console2.log("-> Using existing zeroXAdapter:", deployments.zeroXAdapter); - console2.log(" allowanceTarget:", ZeroXAdapter(deployments.zeroXAdapter).ALLOWANCE_TARGET()); + console2.log("-> Using existing swapSellPolicy:", deployments.swapSellPolicy); + } + + if (deployments.uniswapV3SwapAdapter == address(0)) { + UniswapV3SwapAdapter uniswapV3SwapAdapter = new UniswapV3SwapAdapter{salt: bytes32(SALT)}(uniswapV3Router, deployments.swapSellPolicy); + deployments.uniswapV3SwapAdapter = address(uniswapV3SwapAdapter); + console2.log("-> UniswapV3SwapAdapter deployed at:", address(uniswapV3SwapAdapter)); + } else { + console2.log("-> Using existing uniswapV3SwapAdapter:", deployments.uniswapV3SwapAdapter); + } + + if (deployments.aerodromeV2SwapAdapter == address(0)) { + AerodromeV2SwapAdapter aerodromeV2SwapAdapter = new AerodromeV2SwapAdapter{salt: bytes32(SALT)}(aerodromeV2Router, aerodromeV2Factory, deployments.swapSellPolicy); + deployments.aerodromeV2SwapAdapter = address(aerodromeV2SwapAdapter); + console2.log("-> AerodromeV2SwapAdapter deployed at:", address(aerodromeV2SwapAdapter)); + } else { + console2.log("-> Using existing aerodromeV2SwapAdapter:", deployments.aerodromeV2SwapAdapter); + } + + if (deployments.aerodromeClSwapAdapter == address(0)) { + AerodromeCLSwapAdapter aerodromeClSwapAdapter = new AerodromeCLSwapAdapter{salt: bytes32(SALT)}(aerodromeClRouter, deployments.swapSellPolicy); + deployments.aerodromeClSwapAdapter = address(aerodromeClSwapAdapter); + console2.log("-> AerodromeCLSwapAdapter deployed at:", address(aerodromeClSwapAdapter)); + } else { + console2.log("-> Using existing aerodromeCLSwapAdapter:", deployments.aerodromeClSwapAdapter); } // Deploy or reuse Aave V3 Adapter @@ -241,7 +274,10 @@ contract DeployScript is Script { vm.serializeAddress(json, "feeTracker", deployments.feeTracker); vm.serializeAddress(json, "erc4626Adapter", deployments.erc4626Adapter); vm.serializeAddress(json, "merklAdapter", deployments.merklAdapter); - vm.serializeAddress(json, "zeroXAdapter", deployments.zeroXAdapter); + vm.serializeAddress(json, "swapSellPolicy", deployments.swapSellPolicy); + vm.serializeAddress(json, "uniswapV3SwapAdapter", deployments.uniswapV3SwapAdapter); + vm.serializeAddress(json, "aerodromeV2SwapAdapter", deployments.aerodromeV2SwapAdapter); + vm.serializeAddress(json, "aerodromeCLSwapAdapter", deployments.aerodromeClSwapAdapter); vm.serializeAddress(json, "aaveV3Adapter", deployments.aaveV3Adapter); vm.serializeAddress(json, "compoundV3Adapter", deployments.compoundV3Adapter); string memory finalJson = vm.serializeAddress(json, "compoundV2Adapter", deployments.compoundV2Adapter); @@ -258,9 +294,8 @@ contract DeployScript is Script { AdminTimelock adminTimelock = AdminTimelock(payable(deployments.adminTimelock)); uint256 timelockDelay = adminTimelock.getMinDelay(); - // Collect all operations to batch - address[] memory targets = new address[](10); - bytes[] memory datas = new bytes[](10); + address[] memory targets = new address[](13); + bytes[] memory datas = new bytes[](13); uint256 operationCount = 0; // 1. Configure Factory @@ -292,9 +327,19 @@ contract DeployScript is Script { datas[operationCount] = abi.encodeCall(adapterRegistry.registerAdapter, (deployments.merklAdapter)); operationCount++; } - if (!adapterRegistry.isRegisteredAdapter(deployments.zeroXAdapter)) { + if (!adapterRegistry.isRegisteredAdapter(deployments.uniswapV3SwapAdapter)) { + targets[operationCount] = deployments.adapterRegistry; + datas[operationCount] = abi.encodeCall(adapterRegistry.registerAdapter, (deployments.uniswapV3SwapAdapter)); + operationCount++; + } + if (!adapterRegistry.isRegisteredAdapter(deployments.aerodromeV2SwapAdapter)) { + targets[operationCount] = deployments.adapterRegistry; + datas[operationCount] = abi.encodeCall(adapterRegistry.registerAdapter, (deployments.aerodromeV2SwapAdapter)); + operationCount++; + } + if (!adapterRegistry.isRegisteredAdapter(deployments.aerodromeClSwapAdapter)) { targets[operationCount] = deployments.adapterRegistry; - datas[operationCount] = abi.encodeCall(adapterRegistry.registerAdapter, (deployments.zeroXAdapter)); + datas[operationCount] = abi.encodeCall(adapterRegistry.registerAdapter, (deployments.aerodromeClSwapAdapter)); operationCount++; } if (!adapterRegistry.isRegisteredAdapter(deployments.aaveV3Adapter)) { diff --git a/script/RegisterVault.s.sol b/script/RegisterVault.s.sol index aff7563..dbe51e9 100644 --- a/script/RegisterVault.s.sol +++ b/script/RegisterVault.s.sol @@ -44,8 +44,12 @@ contract RegisterVaultScript is Script { address adapterAddress; if (keccak256(bytes(adapterName)) == keccak256(bytes("erc4626"))) { adapterAddress = json.readAddress(".erc4626Adapter"); - } else if (keccak256(bytes(adapterName)) == keccak256(bytes("zerox")) || keccak256(bytes(adapterName)) == keccak256(bytes("0x"))) { - adapterAddress = json.readAddress(".zeroXAdapter"); + } else if (keccak256(bytes(adapterName)) == keccak256(bytes("uniswap")) || keccak256(bytes(adapterName)) == keccak256(bytes("uniswapv3"))) { + adapterAddress = json.readAddress(".uniswapV3SwapAdapter"); + } else if (keccak256(bytes(adapterName)) == keccak256(bytes("aerodromev2")) || keccak256(bytes(adapterName)) == keccak256(bytes("aerov2"))) { + adapterAddress = json.readAddress(".aerodromeV2SwapAdapter"); + } else if (keccak256(bytes(adapterName)) == keccak256(bytes("aerodromecl")) || keccak256(bytes(adapterName)) == keccak256(bytes("aerocl"))) { + adapterAddress = json.readAddress(".aerodromeCLSwapAdapter"); } else if (keccak256(bytes(adapterName)) == keccak256(bytes("merkl"))) { adapterAddress = json.readAddress(".merklAdapter"); } else if (keccak256(bytes(adapterName)) == keccak256(bytes("aave")) || keccak256(bytes(adapterName)) == keccak256(bytes("aavev3"))) { @@ -55,7 +59,7 @@ contract RegisterVaultScript is Script { } else if (keccak256(bytes(adapterName)) == keccak256(bytes("compoundv2")) || keccak256(bytes(adapterName)) == keccak256(bytes("moonwell"))) { adapterAddress = json.readAddress(".compoundV2Adapter"); } else { - revert(string.concat("Unknown adapter name: ", adapterName, ". Use 'erc4626', 'zerox', 'merkl', 'aave', 'compound', 'compoundv2', or 'moonwell'")); + revert(string.concat("Unknown adapter name: ", adapterName, ". Use 'erc4626', 'uniswapv3', 'aerodromev2', 'aerodromecl', 'merkl', 'aave', 'compound', 'compoundv2', or 'moonwell'")); } console2.log("================================================="); diff --git a/src/adapters/Adapter.sol b/src/adapters/Adapter.sol index d36bc9b..d2976ed 100644 --- a/src/adapters/Adapter.sol +++ b/src/adapters/Adapter.sol @@ -21,7 +21,8 @@ import {IAgentWallet} from "../IAgentWallet.sol"; import {AWKAdapter} from "../agentwalletkit/AWKAdapter.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -error InvalidBaseAsset(); +error AssetNotAllowed(); +error BaseAssetNotAllowed(); /** * @title YieldSeekerAdapter @@ -43,7 +44,11 @@ abstract contract YieldSeekerAdapter is AWKAdapter { } function _requireBaseAsset(address asset) internal view { - if (asset != _baseAssetAddress()) revert InvalidBaseAsset(); + if (asset != _baseAssetAddress()) revert AssetNotAllowed(); + } + + function _requireNotBaseAsset(address asset) internal view { + if (asset == _baseAssetAddress()) revert BaseAssetNotAllowed(); } function _feeTracker() internal view returns (FeeTracker) { diff --git a/src/adapters/ZeroXAdapter.sol b/src/adapters/AerodromeCLSwapAdapter.sol similarity index 54% rename from src/adapters/ZeroXAdapter.sol rename to src/adapters/AerodromeCLSwapAdapter.sol index 9b0f7b4..f17c200 100644 --- a/src/adapters/ZeroXAdapter.sol +++ b/src/adapters/AerodromeCLSwapAdapter.sol @@ -16,24 +16,26 @@ // pragma solidity 0.8.28; -import {AWKZeroXAdapter} from "../agentwalletkit/adapters/AWKZeroXAdapter.sol"; +import {AWKErrors} from "../agentwalletkit/AWKErrors.sol"; +import {AWKAerodromeCLSwapAdapter} from "../agentwalletkit/adapters/AWKAerodromeCLSwapAdapter.sol"; import {YieldSeekerAdapter} from "./Adapter.sol"; +import {IYieldSeekerSwapSellPolicy} from "./SwapSellPolicy.sol"; -/** - * @title YieldSeekerZeroXAdapter - * @notice YieldSeeker-specific 0x adapter with fee tracking - * @dev Extends the generic AWKZeroXAdapter and implements hooks for base asset validation and fee tracking. - */ -contract YieldSeekerZeroXAdapter is AWKZeroXAdapter, YieldSeekerAdapter { - constructor(address allowanceTarget_) AWKZeroXAdapter(allowanceTarget_) {} +contract YieldSeekerAerodromeCLSwapAdapter is AWKAerodromeCLSwapAdapter, YieldSeekerAdapter { + address public immutable SELL_POLICY; - /** - * @notice Internal swap implementation with validation and fee tracking - * @dev Overrides AWK logic to add pre-check and post-fee-tracking - */ - function _swapInternal(address target, address sellToken, address buyToken, uint256 sellAmount, uint256 minBuyAmount, bytes memory swapCallData, uint256 value) internal override returns (uint256 buyAmount, uint256 soldAmount) { + constructor(address aerodromeClRouter, address sellPolicy) AWKAerodromeCLSwapAdapter(aerodromeClRouter) { + if (sellPolicy == address(0)) revert AWKErrors.ZeroAddress(); + SELL_POLICY = sellPolicy; + } + + function _beforeSwap(address sellToken, address buyToken) internal view override { + IYieldSeekerSwapSellPolicy(SELL_POLICY).validateSellableToken(sellToken); + _requireNotBaseAsset(sellToken); _requireBaseAsset(buyToken); - (buyAmount, soldAmount) = super._swapInternal(target, sellToken, buyToken, sellAmount, minBuyAmount, swapCallData, value); + } + + function _afterSwap(address sellToken, uint256 soldAmount, uint256 buyAmount) internal override { _feeTracker().recordAgentTokenSwap(sellToken, soldAmount, buyAmount); } } diff --git a/src/adapters/AerodromeV2SwapAdapter.sol b/src/adapters/AerodromeV2SwapAdapter.sol new file mode 100644 index 0000000..4891a95 --- /dev/null +++ b/src/adapters/AerodromeV2SwapAdapter.sol @@ -0,0 +1,41 @@ +// SPDX-License-Identifier: MIT +// +// /$$ /$$ /$$ /$$ /$$ /$$$$$$ /$$ +// | $$ /$$/|__/ | $$ | $$ /$$__ $$ | $$ +// \ $$ /$$/ /$$ /$$$$$$ | $$ /$$$$$$$| $$ \__/ /$$$$$$ /$$$$$$ | $$ /$$ /$$$$$$ /$$$$$$ +// \ $$$$/ | $$ /$$__ $$| $$ /$$__ $$| $$$$$$ /$$__ $$ /$$__ $$| $$ /$$/ /$$__ $$ /$$__ $$ +// \ $$/ | $$| $$$$$$$$| $$| $$ | $$ \____ $$| $$$$$$$$| $$$$$$$$| $$$$$$/ | $$$$$$$$| $$ \__/ +// | $$ | $$| $$_____/| $$| $$ | $$ /$$ \ $$| $$_____/| $$_____/| $$_ $$ | $$_____/| $$ +// | $$ | $$| $$$$$$$| $$| $$$$$$$| $$$$$$/| $$$$$$$| $$$$$$$| $$ \ $$| $$$$$$$| $$ +// |__/ |__/ \_______/|__/ \_______/ \______/ \_______/ \_______/|__/ \__/ \_______/|__/ +// +// Grow your wealth on auto-pilot with DeFi agents +// https://yieldseeker.xyz +// +// For technical queries or guidance contact @krishan711 +// +pragma solidity 0.8.28; + +import {AWKErrors} from "../agentwalletkit/AWKErrors.sol"; +import {AWKAerodromeV2SwapAdapter} from "../agentwalletkit/adapters/AWKAerodromeV2SwapAdapter.sol"; +import {YieldSeekerAdapter} from "./Adapter.sol"; +import {IYieldSeekerSwapSellPolicy} from "./SwapSellPolicy.sol"; + +contract YieldSeekerAerodromeV2SwapAdapter is AWKAerodromeV2SwapAdapter, YieldSeekerAdapter { + address public immutable SELL_POLICY; + + constructor(address aerodromeV2Router, address aerodromeV2Factory, address sellPolicy) AWKAerodromeV2SwapAdapter(aerodromeV2Router, aerodromeV2Factory) { + if (sellPolicy == address(0)) revert AWKErrors.ZeroAddress(); + SELL_POLICY = sellPolicy; + } + + function _beforeSwap(address sellToken, address buyToken) internal view override { + IYieldSeekerSwapSellPolicy(SELL_POLICY).validateSellableToken(sellToken); + _requireNotBaseAsset(sellToken); + _requireBaseAsset(buyToken); + } + + function _afterSwap(address sellToken, uint256 soldAmount, uint256 buyAmount) internal override { + _feeTracker().recordAgentTokenSwap(sellToken, soldAmount, buyAmount); + } +} diff --git a/src/adapters/SwapSellPolicy.sol b/src/adapters/SwapSellPolicy.sol new file mode 100644 index 0000000..61c4569 --- /dev/null +++ b/src/adapters/SwapSellPolicy.sol @@ -0,0 +1,88 @@ +// SPDX-License-Identifier: MIT +// +// /$$ /$$ /$$ /$$ /$$ /$$$$$$ /$$ +// | $$ /$$/|__/ | $$ | $$ /$$__ $$ | $$ +// \ $$ /$$/ /$$ /$$$$$$ | $$ /$$$$$$$| $$ \__/ /$$$$$$ /$$$$$$ | $$ /$$ /$$$$$$ /$$$$$$ +// \ $$$$/ | $$ /$$__ $$| $$ /$$__ $$| $$$$$$ /$$__ $$ /$$__ $$| $$ /$$/ /$$__ $$ /$$__ $$ +// \ $$/ | $$| $$$$$$$$| $$| $$ | $$ \____ $$| $$$$$$$$| $$$$$$$$| $$$$$$/ | $$$$$$$$| $$ \__/ +// | $$ | $$| $$_____/| $$| $$ | $$ /$$ \ $$| $$_____/| $$_____/| $$_ $$ | $$_____/| $$ +// | $$ | $$| $$$$$$$| $$| $$$$$$$| $$$$$$/| $$$$$$$| $$$$$$$| $$ \ $$| $$$$$$$| $$ +// |__/ |__/ \_______/|__/ \_______/ \______/ \_______/ \_______/|__/ \__/ \_______/|__/ +// +// Grow your wealth on auto-pilot with DeFi agents +// https://yieldseeker.xyz +// +// For technical queries or guidance contact @krishan711 +// +pragma solidity 0.8.28; + +import {AWKErrors} from "../agentwalletkit/AWKErrors.sol"; +import {AccessControl} from "@openzeppelin/contracts/access/AccessControl.sol"; +import {EnumerableSet} from "@openzeppelin/contracts/utils/structs/EnumerableSet.sol"; + +error SellTokenNotAllowed(address token); + +interface IYieldSeekerSwapSellPolicy { + function isSellableToken(address token) external view returns (bool); + function validateSellableToken(address token) external view; +} + +contract YieldSeekerSwapSellPolicy is AccessControl, IYieldSeekerSwapSellPolicy { + using EnumerableSet for EnumerableSet.AddressSet; + + bytes32 public constant EMERGENCY_ROLE = keccak256("EMERGENCY_ROLE"); + + bool public allowSellingAllTokens; + EnumerableSet.AddressSet private sellableTokens; + + event SellableTokenAdded(address indexed token); + event SellableTokenRemoved(address indexed token); + event AllowSellingAllTokensSet(bool enabled); + + constructor(address admin, address emergencyAdmin, bool initialAllowSellingAllTokens) { + if (admin == address(0)) revert AWKErrors.ZeroAddress(); + if (emergencyAdmin == address(0)) revert AWKErrors.ZeroAddress(); + _grantRole(DEFAULT_ADMIN_ROLE, admin); + _grantRole(EMERGENCY_ROLE, emergencyAdmin); + allowSellingAllTokens = initialAllowSellingAllTokens; + } + + function setAllowSellingAllTokens(bool enabled) external onlyRole(DEFAULT_ADMIN_ROLE) { + allowSellingAllTokens = enabled; + emit AllowSellingAllTokensSet(enabled); + } + + function addSellableToken(address token) external onlyRole(DEFAULT_ADMIN_ROLE) { + if (token == address(0)) revert AWKErrors.ZeroAddress(); + if (sellableTokens.add(token)) { + emit SellableTokenAdded(token); + } + } + + function addSellableTokens(address[] calldata tokens) external onlyRole(DEFAULT_ADMIN_ROLE) { + for (uint256 i = 0; i < tokens.length; i++) { + if (tokens[i] == address(0)) revert AWKErrors.ZeroAddress(); + if (sellableTokens.add(tokens[i])) { + emit SellableTokenAdded(tokens[i]); + } + } + } + + function removeSellableToken(address token) external onlyRole(EMERGENCY_ROLE) { + if (sellableTokens.remove(token)) { + emit SellableTokenRemoved(token); + } + } + + function isSellableToken(address token) external view returns (bool) { + return allowSellingAllTokens || sellableTokens.contains(token); + } + + function validateSellableToken(address token) external view { + if (!allowSellingAllTokens && !sellableTokens.contains(token)) revert SellTokenNotAllowed(token); + } + + function getSellableTokens() external view returns (address[] memory) { + return sellableTokens.values(); + } +} diff --git a/src/adapters/UniswapV3SwapAdapter.sol b/src/adapters/UniswapV3SwapAdapter.sol new file mode 100644 index 0000000..12dc0f6 --- /dev/null +++ b/src/adapters/UniswapV3SwapAdapter.sol @@ -0,0 +1,41 @@ +// SPDX-License-Identifier: MIT +// +// /$$ /$$ /$$ /$$ /$$ /$$$$$$ /$$ +// | $$ /$$/|__/ | $$ | $$ /$$__ $$ | $$ +// \ $$ /$$/ /$$ /$$$$$$ | $$ /$$$$$$$| $$ \__/ /$$$$$$ /$$$$$$ | $$ /$$ /$$$$$$ /$$$$$$ +// \ $$$$/ | $$ /$$__ $$| $$ /$$__ $$| $$$$$$ /$$__ $$ /$$__ $$| $$ /$$/ /$$__ $$ /$$__ $$ +// \ $$/ | $$| $$$$$$$$| $$| $$ | $$ \____ $$| $$$$$$$$| $$$$$$$$| $$$$$$/ | $$$$$$$$| $$ \__/ +// | $$ | $$| $$_____/| $$| $$ | $$ /$$ \ $$| $$_____/| $$_____/| $$_ $$ | $$_____/| $$ +// | $$ | $$| $$$$$$$| $$| $$$$$$$| $$$$$$/| $$$$$$$| $$$$$$$| $$ \ $$| $$$$$$$| $$ +// |__/ |__/ \_______/|__/ \_______/ \______/ \_______/ \_______/|__/ \__/ \_______/|__/ +// +// Grow your wealth on auto-pilot with DeFi agents +// https://yieldseeker.xyz +// +// For technical queries or guidance contact @krishan711 +// +pragma solidity 0.8.28; + +import {AWKErrors} from "../agentwalletkit/AWKErrors.sol"; +import {AWKUniswapV3SwapAdapter} from "../agentwalletkit/adapters/AWKUniswapV3SwapAdapter.sol"; +import {YieldSeekerAdapter} from "./Adapter.sol"; +import {IYieldSeekerSwapSellPolicy} from "./SwapSellPolicy.sol"; + +contract YieldSeekerUniswapV3SwapAdapter is AWKUniswapV3SwapAdapter, YieldSeekerAdapter { + address public immutable SELL_POLICY; + + constructor(address uniswapV3Router, address sellPolicy) AWKUniswapV3SwapAdapter(uniswapV3Router) { + if (sellPolicy == address(0)) revert AWKErrors.ZeroAddress(); + SELL_POLICY = sellPolicy; + } + + function _beforeSwap(address sellToken, address buyToken) internal view override { + IYieldSeekerSwapSellPolicy(SELL_POLICY).validateSellableToken(sellToken); + _requireNotBaseAsset(sellToken); + _requireBaseAsset(buyToken); + } + + function _afterSwap(address sellToken, uint256 soldAmount, uint256 buyAmount) internal override { + _feeTracker().recordAgentTokenSwap(sellToken, soldAmount, buyAmount); + } +} diff --git a/src/agentwalletkit/AWKAdapter.sol b/src/agentwalletkit/AWKAdapter.sol index 4e355f7..ad70f6e 100644 --- a/src/agentwalletkit/AWKAdapter.sol +++ b/src/agentwalletkit/AWKAdapter.sol @@ -28,8 +28,9 @@ error UnknownOperation(); */ abstract contract AWKAdapter is IAWKAdapter { /// @notice The adapter's own address, set at deployment - /// @dev Used to detect direct calls vs delegatecalls - address private immutable SELF; + /// @dev Used to detect direct calls vs delegatecalls. Internal so subclasses + /// can reference the adapter's real address during delegatecall context. + address internal immutable SELF; constructor() { SELF = address(this); diff --git a/src/agentwalletkit/AWKAgentWalletV1.sol b/src/agentwalletkit/AWKAgentWalletV1.sol index d97c0a4..6a59022 100644 --- a/src/agentwalletkit/AWKAgentWalletV1.sol +++ b/src/agentwalletkit/AWKAgentWalletV1.sol @@ -290,16 +290,12 @@ abstract contract AWKAgentWalletV1 is IAWKAgentWallet, BaseAccount, Initializabl function _validateSignature(UserOperation calldata userOp, bytes32 userOpHash) internal virtual override returns (uint256 validationData) { bytes32 hash = userOpHash.toEthSignedMessageHash(); address signer = hash.recover(userOp.signature); - - // Allow either the owner or the centralized AWKServer to sign if (signer == owner()) { return 0; } - if (isAgentOperator(signer)) { return 0; } - return SIG_VALIDATION_FAILED; } diff --git a/src/agentwalletkit/adapters/AWKAerodromeCLSwapAdapter.sol b/src/agentwalletkit/adapters/AWKAerodromeCLSwapAdapter.sol new file mode 100644 index 0000000..e84c277 --- /dev/null +++ b/src/agentwalletkit/adapters/AWKAerodromeCLSwapAdapter.sol @@ -0,0 +1,133 @@ +// SPDX-License-Identifier: MIT +// +// _ _ __ __ _ _ _ _ ___ _ +// / \ __ _ ___ _ __ | |\ \ / /_ _| | | ___| |_| |/ (_) |_ +// / _ \ / _` |/ _ \ '_ \| __\ \ /\ / / _` | | |/ _ \ __| ' /| | __| +// / ___ \ (_| | __/ | | | |_ \ V V / (_| | | | __/ |_| . \| | |_ +// /_/ \_\__, |\___|_| |_|\__| \_/\_/ \__,_|_|_|\___|\__|_|\_\_|\__| +// |___/ +// +// Build verifiably secure onchain agents +// https://agentwalletkit.tokenpage.xyz +// +// For technical queries or guidance contact @krishan711 +// +pragma solidity 0.8.28; + +import {UnknownOperation} from "../AWKAdapter.sol"; +import {AWKErrors} from "../AWKErrors.sol"; +import {AWKSwapAdapter, InvalidRouteLength, InvalidSwapRoute, InvalidSwapTokenAddress} from "./AWKSwapAdapter.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; + +error InvalidAerodromeCLRouterTarget(address target, address expected); +error InvalidTickSpacing(int24 tickSpacing); + +interface IAerodromeCLSwapRouter { + struct ExactInputSingleParams { + address tokenIn; + address tokenOut; + int24 tickSpacing; + address recipient; + uint256 deadline; + uint256 amountIn; + uint256 amountOutMinimum; + uint160 sqrtPriceLimitX96; + } + + struct ExactInputParams { + bytes path; + address recipient; + uint256 deadline; + uint256 amountIn; + uint256 amountOutMinimum; + } + + function exactInputSingle(ExactInputSingleParams calldata params) external payable returns (uint256 amountOut); + function exactInput(ExactInputParams calldata params) external payable returns (uint256 amountOut); +} + +/** + * @title AWKAerodromeCLSwapAdapter + * @notice Generic adapter for Aerodrome CL swaps using structured route parameters + * @dev Swap execution runs via delegatecall from AgentWallet. + * Accepts multi-hop routes through path+tickSpacing arrays with strict validation. + */ +contract AWKAerodromeCLSwapAdapter is AWKSwapAdapter { + using SafeERC20 for IERC20; + + struct SwapRoute { + address[] path; + int24[] tickSpacings; + } + + uint256 internal constant FAR_FUTURE_DEADLINE = type(uint32).max; + uint256 internal constant MAX_HOPS = 4; + + address public immutable AERODROME_CL_ROUTER; + + constructor(address aerodromeClRouter) { + if (aerodromeClRouter == address(0)) revert AWKErrors.ZeroAddress(); + AERODROME_CL_ROUTER = aerodromeClRouter; + } + + // ============ Swap Operations ============ + + /** + * @notice Swap tokens via Aerodrome CL (public interface, should not be called directly) + * @dev This is a placeholder function signature. Actual execution happens via execute() -> _swap() + */ + function swap(address sellToken, address buyToken, SwapRoute calldata route, uint256 sellAmount, uint256 minBuyAmount) external pure returns (uint256) { + revert AWKErrors.DirectCallForbidden(); + } + + // ============ Swap Execution (delegatecall only) ============ + + /** + * @notice Route delegatecall operations to the swap handler + * @param target The Aerodrome CL router target contract + * @param data ABI-encoded call data (must match swap() selector) + * @return ABI-encoded buy amount + */ + function execute(address target, bytes calldata data) external payable virtual override onlyDelegateCall returns (bytes memory) { + bytes4 selector = bytes4(data[:4]); + if (selector == this.swap.selector) { + (address sellToken, address buyToken, SwapRoute memory route, uint256 sellAmount, uint256 minBuyAmount) = abi.decode(data[4:], (address, address, SwapRoute, uint256, uint256)); + (uint256 buyAmount,) = _swap(target, sellToken, buyToken, route, sellAmount, minBuyAmount); + return abi.encode(buyAmount); + } + revert UnknownOperation(); + } + + // ============ Internal Implementations ============ + + function _swap(address target, address sellToken, address buyToken, SwapRoute memory route, uint256 sellAmount, uint256 minBuyAmount) internal virtual returns (uint256 buyAmount, uint256 soldAmount) { + if (target != AERODROME_CL_ROUTER) revert InvalidAerodromeCLRouterTarget(target, AERODROME_CL_ROUTER); + _validateRoute(sellToken, buyToken, route); + SwapBalanceSnapshot memory balanceSnapshot = _beforeSwapInternal(sellToken, buyToken, sellAmount, minBuyAmount); + IERC20(sellToken).forceApprove(AERODROME_CL_ROUTER, sellAmount); + bytes memory encodedPath = abi.encodePacked(route.path[0]); + for (uint256 i = 0; i < route.tickSpacings.length; i++) { + encodedPath = bytes.concat(encodedPath, abi.encodePacked(route.tickSpacings[i]), abi.encodePacked(route.path[i + 1])); + } + IAerodromeCLSwapRouter(AERODROME_CL_ROUTER).exactInput(IAerodromeCLSwapRouter.ExactInputParams({path: encodedPath, recipient: address(this), deadline: FAR_FUTURE_DEADLINE, amountIn: sellAmount, amountOutMinimum: minBuyAmount})); + (buyAmount, soldAmount) = _afterSwapInternal(AERODROME_CL_ROUTER, sellToken, buyToken, minBuyAmount, balanceSnapshot); + } + + function _validateTickSpacing(int24 tickSpacing) internal pure { + if (tickSpacing != 1 && tickSpacing != 50 && tickSpacing != 100 && tickSpacing != 200) revert InvalidTickSpacing(tickSpacing); + } + + function _validateRoute(address sellToken, address buyToken, SwapRoute memory route) internal pure { + uint256 pathLength = route.path.length; + if (pathLength < 2 || pathLength > MAX_HOPS + 1) revert InvalidRouteLength(pathLength); + if (route.tickSpacings.length != pathLength - 1) revert InvalidSwapRoute(); + _validateRouteEndpoints(sellToken, buyToken, route.path[0], route.path[pathLength - 1]); + for (uint256 i = 0; i < pathLength; i++) { + if (route.path[i] == address(0)) revert InvalidSwapTokenAddress(route.path[i]); + } + for (uint256 i = 0; i < route.tickSpacings.length; i++) { + _validateTickSpacing(route.tickSpacings[i]); + } + } +} diff --git a/src/agentwalletkit/adapters/AWKAerodromeV2SwapAdapter.sol b/src/agentwalletkit/adapters/AWKAerodromeV2SwapAdapter.sol new file mode 100644 index 0000000..23e451f --- /dev/null +++ b/src/agentwalletkit/adapters/AWKAerodromeV2SwapAdapter.sol @@ -0,0 +1,114 @@ +// SPDX-License-Identifier: MIT +// +// _ _ __ __ _ _ _ _ ___ _ +// / \ __ _ ___ _ __ | |\ \ / /_ _| | | ___| |_| |/ (_) |_ +// / _ \ / _` |/ _ \ '_ \| __\ \ /\ / / _` | | |/ _ \ __| ' /| | __| +// / ___ \ (_| | __/ | | | |_ \ V V / (_| | | | __/ |_| . \| | |_ +// /_/ \_\__, |\___|_| |_|\__| \_/\_/ \__,_|_|_|\___|\__|_|\_\_|\__| +// |___/ +// +// Build verifiably secure onchain agents +// https://agentwalletkit.tokenpage.xyz +// +// For technical queries or guidance contact @krishan711 +// +pragma solidity 0.8.28; + +import {UnknownOperation} from "../AWKAdapter.sol"; +import {AWKErrors} from "../AWKErrors.sol"; +import {AWKSwapAdapter, InvalidRouteLength, InvalidSwapRoute, InvalidSwapTokenAddress} from "./AWKSwapAdapter.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; + +error InvalidAerodromeV2RouterTarget(address target, address expected); + +interface IAerodromeV2Router { + struct Route { + address from; + address to; + bool stable; + address factory; + } + + function swapExactTokensForTokens(uint256 amountIn, uint256 amountOutMin, Route[] memory routes, address to, uint256 deadline) external returns (uint256[] memory amounts); +} + +/** + * @title AWKAerodromeV2SwapAdapter + * @notice Generic adapter for Aerodrome V2 swaps using structured route parameters + * @dev Swap execution runs via delegatecall from AgentWallet. + * Accepts multi-hop routes through path+stable arrays with strict validation. + */ +contract AWKAerodromeV2SwapAdapter is AWKSwapAdapter { + using SafeERC20 for IERC20; + + struct SwapRoute { + address[] path; + bool[] stables; + } + + uint256 internal constant FAR_FUTURE_DEADLINE = type(uint32).max; + uint256 internal constant MAX_HOPS = 4; + + address public immutable AERODROME_V2_ROUTER; + address public immutable AERODROME_V2_FACTORY; + + constructor(address aerodromeV2Router, address aerodromeV2Factory) { + if (aerodromeV2Router == address(0) || aerodromeV2Factory == address(0)) revert AWKErrors.ZeroAddress(); + AERODROME_V2_ROUTER = aerodromeV2Router; + AERODROME_V2_FACTORY = aerodromeV2Factory; + } + + // ============ Swap Operations ============ + + /** + * @notice Swap tokens via Aerodrome V2 (public interface, should not be called directly) + * @dev This is a placeholder function signature. Actual execution happens via execute() -> _swap() + */ + function swap(address sellToken, address buyToken, SwapRoute calldata route, uint256 sellAmount, uint256 minBuyAmount) external pure returns (uint256) { + revert AWKErrors.DirectCallForbidden(); + } + + // ============ Swap Execution (delegatecall only) ============ + + /** + * @notice Route delegatecall operations to the swap handler + * @param target The Aerodrome V2 router target contract + * @param data ABI-encoded call data (must match swap() selector) + * @return ABI-encoded buy amount + */ + function execute(address target, bytes calldata data) external payable virtual override onlyDelegateCall returns (bytes memory) { + bytes4 selector = bytes4(data[:4]); + if (selector == this.swap.selector) { + (address sellToken, address buyToken, SwapRoute memory route, uint256 sellAmount, uint256 minBuyAmount) = abi.decode(data[4:], (address, address, SwapRoute, uint256, uint256)); + (uint256 buyAmount,) = _swap(target, sellToken, buyToken, route, sellAmount, minBuyAmount); + return abi.encode(buyAmount); + } + revert UnknownOperation(); + } + + // ============ Internal Implementations ============ + + function _swap(address target, address sellToken, address buyToken, SwapRoute memory route, uint256 sellAmount, uint256 minBuyAmount) internal virtual returns (uint256 buyAmount, uint256 soldAmount) { + if (target != AERODROME_V2_ROUTER) revert InvalidAerodromeV2RouterTarget(target, AERODROME_V2_ROUTER); + _validateRoute(sellToken, buyToken, route); + SwapBalanceSnapshot memory balanceSnapshot = _beforeSwapInternal(sellToken, buyToken, sellAmount, minBuyAmount); + IERC20(sellToken).forceApprove(AERODROME_V2_ROUTER, sellAmount); + IAerodromeV2Router.Route[] memory routes = new IAerodromeV2Router.Route[](route.stables.length); + for (uint256 i = 0; i < route.stables.length; i++) { + routes[i] = IAerodromeV2Router.Route({from: route.path[i], to: route.path[i + 1], stable: route.stables[i], factory: AERODROME_V2_FACTORY}); + } + IAerodromeV2Router(AERODROME_V2_ROUTER).swapExactTokensForTokens(sellAmount, minBuyAmount, routes, address(this), FAR_FUTURE_DEADLINE); + (buyAmount, soldAmount) = _afterSwapInternal(AERODROME_V2_ROUTER, sellToken, buyToken, minBuyAmount, balanceSnapshot); + } + + function _validateRoute(address sellToken, address buyToken, SwapRoute memory route) internal pure { + uint256 pathLength = route.path.length; + if (pathLength < 2 || pathLength > MAX_HOPS + 1) revert InvalidRouteLength(pathLength); + if (route.stables.length != pathLength - 1) revert InvalidSwapRoute(); + _validateRouteEndpoints(sellToken, buyToken, route.path[0], route.path[pathLength - 1]); + for (uint256 i = 0; i < pathLength; i++) { + if (route.path[i] == address(0)) revert InvalidSwapTokenAddress(route.path[i]); + } + } +} diff --git a/src/agentwalletkit/adapters/AWKSwapAdapter.sol b/src/agentwalletkit/adapters/AWKSwapAdapter.sol new file mode 100644 index 0000000..b9449d4 --- /dev/null +++ b/src/agentwalletkit/adapters/AWKSwapAdapter.sol @@ -0,0 +1,67 @@ +// SPDX-License-Identifier: MIT +// +// _ _ __ __ _ _ _ _ ___ _ +// / \ __ _ ___ _ __ | |\ \ / /_ _| | | ___| |_| |/ (_) |_ +// / _ \ / _` |/ _ \ '_ \| __\ \ /\ / / _` | | |/ _ \ __| ' /| | __| +// / ___ \ (_| | __/ | | | |_ \ V V / (_| | | | __/ |_| . \| | |_ +// /_/ \_\__, |\___|_| |_|\__| \_/\_/ \__,_|_|_|\___|\__|_|\_\_|\__| +// |___/ +// +// Build verifiably secure onchain agents +// https://agentwalletkit.tokenpage.xyz +// +// For technical queries or guidance contact @krishan711 +// +pragma solidity 0.8.28; + +import {AWKAdapter} from "../AWKAdapter.sol"; +import {AWKErrors} from "../AWKErrors.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; + +error InvalidSwapTokenAddress(address token); +error InvalidSwapRoute(); +error InvalidRouteLength(uint256 length); +error InvalidRouteEndpoints(address expectedSellToken, address expectedBuyToken); +error InsufficientOutput(uint256 received, uint256 minimum); + +/** + * @title AWKSwapAdapter + * @notice Base class for swap adapters + * @dev Swap execution runs via delegatecall from AgentWallet. + */ +abstract contract AWKSwapAdapter is AWKAdapter { + struct SwapBalanceSnapshot { + uint256 buyBalanceBefore; + uint256 sellBalanceBefore; + } + + event Swapped(address indexed wallet, address indexed router, address sellToken, address buyToken, uint256 soldAmount, uint256 buyAmount); + + // ============ Shared Swap Helpers ============ + + function _beforeSwap(address sellToken, address buyToken) internal view virtual {} + + function _afterSwap(address sellToken, uint256 soldAmount, uint256 buyAmount) internal virtual {} + + function _validateRouteEndpoints(address sellToken, address buyToken, address routeStartToken, address routeEndToken) internal pure { + if (routeStartToken != sellToken || routeEndToken != buyToken) revert InvalidRouteEndpoints(sellToken, buyToken); + } + + function _beforeSwapInternal(address sellToken, address buyToken, uint256 sellAmount, uint256 minBuyAmount) internal virtual returns (SwapBalanceSnapshot memory snapshot) { + if (sellToken == address(0) || buyToken == address(0) || sellToken == buyToken) revert InvalidSwapTokenAddress(sellToken); + if (sellAmount == 0 || minBuyAmount == 0) revert AWKErrors.ZeroAmount(); + _beforeSwap(sellToken, buyToken); + snapshot.buyBalanceBefore = IERC20(buyToken).balanceOf(address(this)); + snapshot.sellBalanceBefore = IERC20(sellToken).balanceOf(address(this)); + } + + function _afterSwapInternal(address router, address sellToken, address buyToken, uint256 minBuyAmount, SwapBalanceSnapshot memory snapshot) internal virtual returns (uint256 buyAmount, uint256 soldAmount) { + uint256 buyBalanceAfter = IERC20(buyToken).balanceOf(address(this)); + uint256 sellBalanceAfter = IERC20(sellToken).balanceOf(address(this)); + soldAmount = snapshot.sellBalanceBefore - sellBalanceAfter; + buyAmount = buyBalanceAfter - snapshot.buyBalanceBefore; + if (buyAmount < minBuyAmount) revert InsufficientOutput(buyAmount, minBuyAmount); + _afterSwap(sellToken, soldAmount, buyAmount); + emit Swapped(address(this), router, sellToken, buyToken, soldAmount, buyAmount); + } +} diff --git a/src/agentwalletkit/adapters/AWKUniswapV3SwapAdapter.sol b/src/agentwalletkit/adapters/AWKUniswapV3SwapAdapter.sol new file mode 100644 index 0000000..dcfec2d --- /dev/null +++ b/src/agentwalletkit/adapters/AWKUniswapV3SwapAdapter.sol @@ -0,0 +1,130 @@ +// SPDX-License-Identifier: MIT +// +// _ _ __ __ _ _ _ _ ___ _ +// / \ __ _ ___ _ __ | |\ \ / /_ _| | | ___| |_| |/ (_) |_ +// / _ \ / _` |/ _ \ '_ \| __\ \ /\ / / _` | | |/ _ \ __| ' /| | __| +// / ___ \ (_| | __/ | | | |_ \ V V / (_| | | | __/ |_| . \| | |_ +// /_/ \_\__, |\___|_| |_|\__| \_/\_/ \__,_|_|_|\___|\__|_|\_\_|\__| +// |___/ +// +// Build verifiably secure onchain agents +// https://agentwalletkit.tokenpage.xyz +// +// For technical queries or guidance contact @krishan711 +// +pragma solidity 0.8.28; + +import {UnknownOperation} from "../AWKAdapter.sol"; +import {AWKErrors} from "../AWKErrors.sol"; +import {AWKSwapAdapter, InvalidRouteLength, InvalidSwapRoute, InvalidSwapTokenAddress} from "./AWKSwapAdapter.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; + +error InvalidUniswapV3RouterTarget(address target, address expected); +error InvalidUniswapV3FeeTier(uint24 fee); + +interface IUniswapV3SwapRouter { + struct ExactInputSingleParams { + address tokenIn; + address tokenOut; + uint24 fee; + address recipient; + uint256 amountIn; + uint256 amountOutMinimum; + uint160 sqrtPriceLimitX96; + } + + struct ExactInputParams { + bytes path; + address recipient; + uint256 amountIn; + uint256 amountOutMinimum; + } + + function exactInputSingle(ExactInputSingleParams calldata params) external payable returns (uint256 amountOut); + function exactInput(ExactInputParams calldata params) external payable returns (uint256 amountOut); +} + +/** + * @title AWKUniswapV3SwapAdapter + * @notice Generic adapter for Uniswap V3 swaps using structured route parameters + * @dev Swap execution runs via delegatecall from AgentWallet. + * Accepts multi-hop routes through path+fee arrays with strict validation. + */ +contract AWKUniswapV3SwapAdapter is AWKSwapAdapter { + using SafeERC20 for IERC20; + + uint256 internal constant MAX_HOPS = 4; + + struct SwapRoute { + address[] path; + uint24[] fees; + } + + address public immutable UNISWAP_V3_ROUTER; + + constructor(address uniswapV3Router) { + if (uniswapV3Router == address(0)) revert AWKErrors.ZeroAddress(); + UNISWAP_V3_ROUTER = uniswapV3Router; + } + + // ============ Swap Operations ============ + + /** + * @notice Swap tokens via Uniswap V3 (public interface, should not be called directly) + * @dev This is a placeholder function signature. Actual execution happens via execute() -> _swap() + */ + function swap(address sellToken, address buyToken, SwapRoute calldata route, uint256 sellAmount, uint256 minBuyAmount) external pure returns (uint256) { + revert AWKErrors.DirectCallForbidden(); + } + + // ============ Swap Execution (delegatecall only) ============ + + /** + * @notice Route delegatecall operations to the swap handler + * @param target The Uniswap V3 router target contract + * @param data ABI-encoded call data (must match swap() selector) + * @return ABI-encoded buy amount + */ + function execute(address target, bytes calldata data) external payable virtual override onlyDelegateCall returns (bytes memory) { + bytes4 selector = bytes4(data[:4]); + if (selector == this.swap.selector) { + (address sellToken, address buyToken, SwapRoute memory route, uint256 sellAmount, uint256 minBuyAmount) = abi.decode(data[4:], (address, address, SwapRoute, uint256, uint256)); + (uint256 buyAmount,) = _swap(target, sellToken, buyToken, route, sellAmount, minBuyAmount); + return abi.encode(buyAmount); + } + revert UnknownOperation(); + } + + // ============ Internal Implementations ============ + + function _swap(address target, address sellToken, address buyToken, SwapRoute memory route, uint256 sellAmount, uint256 minBuyAmount) internal virtual returns (uint256 buyAmount, uint256 soldAmount) { + if (target != UNISWAP_V3_ROUTER) revert InvalidUniswapV3RouterTarget(target, UNISWAP_V3_ROUTER); + _validateRoute(sellToken, buyToken, route); + SwapBalanceSnapshot memory balanceSnapshot = _beforeSwapInternal(sellToken, buyToken, sellAmount, minBuyAmount); + IERC20(sellToken).forceApprove(UNISWAP_V3_ROUTER, sellAmount); + bytes memory encodedPath = abi.encodePacked(route.path[0]); + for (uint256 i = 0; i < route.fees.length; i++) { + encodedPath = bytes.concat(encodedPath, abi.encodePacked(route.fees[i]), abi.encodePacked(route.path[i + 1])); + } + IUniswapV3SwapRouter(UNISWAP_V3_ROUTER).exactInput(IUniswapV3SwapRouter.ExactInputParams({path: encodedPath, recipient: address(this), amountIn: sellAmount, amountOutMinimum: minBuyAmount})); + (buyAmount, soldAmount) = _afterSwapInternal(UNISWAP_V3_ROUTER, sellToken, buyToken, minBuyAmount, balanceSnapshot); + } + + function _validateFeeTier(uint24 fee) internal pure { + if (fee != 100 && fee != 500 && fee != 3000 && fee != 10000) revert InvalidUniswapV3FeeTier(fee); + } + + function _validateRoute(address sellToken, address buyToken, SwapRoute memory route) internal pure { + uint256 pathLength = route.path.length; + if (pathLength < 2 || pathLength > MAX_HOPS + 1) revert InvalidRouteLength(pathLength); + if (route.fees.length != pathLength - 1) revert InvalidSwapRoute(); + _validateRouteEndpoints(sellToken, buyToken, route.path[0], route.path[pathLength - 1]); + for (uint256 i = 0; i < pathLength; i++) { + if (route.path[i] == address(0)) revert InvalidSwapTokenAddress(route.path[i]); + } + for (uint256 i = 0; i < route.fees.length; i++) { + _validateFeeTier(route.fees[i]); + } + } +} diff --git a/src/agentwalletkit/adapters/AWKZeroXAdapter.sol b/src/agentwalletkit/adapters/AWKZeroXAdapter.sol deleted file mode 100644 index 8316c82..0000000 --- a/src/agentwalletkit/adapters/AWKZeroXAdapter.sol +++ /dev/null @@ -1,106 +0,0 @@ -// SPDX-License-Identifier: MIT -// -// _ _ __ __ _ _ _ _ ___ _ -// / \ __ _ ___ _ __ | |\ \ / /_ _| | | ___| |_| |/ (_) |_ -// / _ \ / _` |/ _ \ '_ \| __\ \ /\ / / _` | | |/ _ \ __| ' /| | __| -// / ___ \ (_| | __/ | | | |_ \ V V / (_| | | | __/ |_| . \| | |_ -// /_/ \_\__, |\___|_| |_|\__| \_/\_/ \__,_|_|_|\___|\__|_|\_\_|\__| -// |___/ -// -// Build verifiably secure onchain agents -// https://agentwalletkit.tokenpage.xyz -// -// For technical queries or guidance contact @krishan711 -// -pragma solidity 0.8.28; - -import {AWKAdapter, UnknownOperation} from "../AWKAdapter.sol"; -import {AWKErrors} from "../AWKErrors.sol"; -import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; - -error InvalidAllowanceTarget(); -error InsufficientEth(uint256 balance, uint256 required); -error SwapFailed(bytes reason); -error InsufficientOutput(uint256 received, uint256 minimum); - -/** - * @title AWKZeroXAdapter - * @notice Generic adapter for token swaps via 0x with pre/post hooks - * @dev Subclasses can override hooks to add custom logic (e.g., fee tracking). - */ -contract AWKZeroXAdapter is AWKAdapter { - using SafeERC20 for IERC20; - - address public immutable ALLOWANCE_TARGET; - address internal constant NATIVE_TOKEN = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE; - - event Swapped(address indexed wallet, address indexed target, address sellToken, address buyToken, uint256 sellAmount, uint256 buyAmount); - - constructor(address allowanceTarget_) { - if (allowanceTarget_ == address(0)) revert InvalidAllowanceTarget(); - ALLOWANCE_TARGET = allowanceTarget_; - } - - /** - * @notice Override execute to handle swap operations - * @dev Already running in wallet context via delegatecall from AgentWallet - */ - function execute(address target, bytes calldata data) external payable virtual override onlyDelegateCall returns (bytes memory) { - bytes4 selector = bytes4(data[:4]); - if (selector == this.swap.selector) { - (address sellToken, address buyToken, uint256 sellAmount, uint256 minBuyAmount, bytes memory swapCallData, uint256 value) = abi.decode(data[4:], (address, address, uint256, uint256, bytes, uint256)); - (uint256 buyAmount,) = _swapInternal(target, sellToken, buyToken, sellAmount, minBuyAmount, swapCallData, value); - return abi.encode(buyAmount); - } - revert UnknownOperation(); - } - - // ============ Swap Operations ============ - - /** - * @notice Swap tokens via 0x (public interface, should not be called directly) - * @param sellToken The token to sell (use NATIVE_TOKEN for ETH) - * @param buyToken The token to buy - * @param sellAmount The amount of sellToken to swap - * @param minBuyAmount Minimum acceptable buyToken amount (slippage protection) - * @param swapCallData The 0x API swap calldata - * @param value ETH value (ignored for security, sellAmount used instead) - * @return buyAmount The amount of buyToken received - * @dev This is a placeholder - actual execution happens via execute() -> _swapInternal() - */ - function swap(address sellToken, address buyToken, uint256 sellAmount, uint256 minBuyAmount, bytes calldata swapCallData, uint256 value) external payable returns (uint256) { - revert AWKErrors.DirectCallForbidden(); - } - - /** - * @notice Internal swap implementation - * @dev Runs in wallet context via delegatecall - */ - function _swapInternal(address target, address sellToken, address buyToken, uint256 sellAmount, uint256 minBuyAmount, bytes memory swapCallData, uint256 value) internal virtual returns (uint256 buyAmount, uint256 soldAmount) { - if (sellAmount == 0 || minBuyAmount == 0) revert AWKErrors.ZeroAmount(); - - // Security: For native ETH swaps, ignore the 'value' parameter from calldata and always send exactly sellAmount. - // This prevents a malicious operator from oversending ETH (e.g., value=10 ETH but sellAmount=1 ETH), - // which would trap excess ETH in the 0x proxy contract. We only send what we're actually selling. - uint256 ethToSend; - if (sellToken == NATIVE_TOKEN) { - ethToSend = sellAmount; - if (address(this).balance < sellAmount) revert InsufficientEth(address(this).balance, sellAmount); - } else { - ethToSend = 0; - IERC20(sellToken).forceApprove(ALLOWANCE_TARGET, sellAmount); - } - uint256 buyBalanceBefore = buyToken == NATIVE_TOKEN ? address(this).balance : IERC20(buyToken).balanceOf(address(this)); - uint256 sellBalanceBefore = sellToken == NATIVE_TOKEN ? address(this).balance : IERC20(sellToken).balanceOf(address(this)); - (bool success, bytes memory reason) = target.call{value: ethToSend}(swapCallData); - if (!success) revert SwapFailed(reason); - uint256 buyBalanceAfter = buyToken == NATIVE_TOKEN ? address(this).balance : IERC20(buyToken).balanceOf(address(this)); - uint256 sellBalanceAfter = sellToken == NATIVE_TOKEN ? address(this).balance : IERC20(sellToken).balanceOf(address(this)); - soldAmount = sellBalanceBefore - sellBalanceAfter; - buyAmount = buyBalanceAfter - buyBalanceBefore; - if (buyAmount < minBuyAmount) revert InsufficientOutput(buyAmount, minBuyAmount); - - emit Swapped(address(this), target, sellToken, buyToken, soldAmount, buyAmount); - } -} diff --git a/test/integration/SwapAdapterIntegration.t.sol b/test/integration/SwapAdapterIntegration.t.sol new file mode 100644 index 0000000..ac5fef2 --- /dev/null +++ b/test/integration/SwapAdapterIntegration.t.sol @@ -0,0 +1,306 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.28; + +import {YieldSeekerAdapterRegistry as AdapterRegistry} from "../../src/AdapterRegistry.sol"; +import {YieldSeekerAgentWalletFactory as AgentWalletFactory} from "../../src/AgentWalletFactory.sol"; +import {YieldSeekerAgentWalletV1 as AgentWalletV1} from "../../src/AgentWalletV1.sol"; +import {YieldSeekerFeeTracker as FeeTracker} from "../../src/FeeTracker.sol"; +import {AssetNotAllowed} from "../../src/adapters/Adapter.sol"; +import {YieldSeekerAerodromeCLSwapAdapter as AerodromeCLSwapAdapter} from "../../src/adapters/AerodromeCLSwapAdapter.sol"; +import {YieldSeekerAerodromeV2SwapAdapter as AerodromeV2SwapAdapter} from "../../src/adapters/AerodromeV2SwapAdapter.sol"; +import {SellTokenNotAllowed, YieldSeekerSwapSellPolicy} from "../../src/adapters/SwapSellPolicy.sol"; +import {YieldSeekerUniswapV3SwapAdapter as UniswapV3SwapAdapter} from "../../src/adapters/UniswapV3SwapAdapter.sol"; +import {AdapterExecutionFailed} from "../../src/agentwalletkit/AWKAgentWalletV1.sol"; +import {AWKErrors} from "../../src/agentwalletkit/AWKErrors.sol"; +import {AWKAerodromeCLSwapAdapter, IAerodromeCLSwapRouter} from "../../src/agentwalletkit/adapters/AWKAerodromeCLSwapAdapter.sol"; +import {AWKAerodromeV2SwapAdapter, IAerodromeV2Router} from "../../src/agentwalletkit/adapters/AWKAerodromeV2SwapAdapter.sol"; +import {InvalidRouteEndpoints} from "../../src/agentwalletkit/adapters/AWKSwapAdapter.sol"; +import {AWKUniswapV3SwapAdapter, IUniswapV3SwapRouter} from "../../src/agentwalletkit/adapters/AWKUniswapV3SwapAdapter.sol"; +import {MockERC20} from "../mocks/MockERC20.sol"; +import {Test} from "forge-std/Test.sol"; + +contract MockUniswapV3RouterIntegration { + uint256 public configuredBuyAmount; + + function setBuyAmount(uint256 amount) external { + configuredBuyAmount = amount; + } + + function exactInput(IUniswapV3SwapRouter.ExactInputParams calldata params) external payable returns (uint256 amountOut) { + (address sellToken, address buyToken) = _decodePathEndpoints(params.path); + require(MockERC20(sellToken).transferFrom(msg.sender, address(this), params.amountIn), "TransferFrom failed"); + amountOut = configuredBuyAmount == 0 ? params.amountOutMinimum : configuredBuyAmount; + require(MockERC20(buyToken).transfer(msg.sender, amountOut), "Transfer failed"); + } + + function _decodePathEndpoints(bytes memory path) internal pure returns (address firstToken, address lastToken) { + require(path.length >= 43, "invalid path"); + assembly { + firstToken := shr(96, mload(add(path, 0x20))) + lastToken := shr(96, mload(add(add(path, 0x20), sub(mload(path), 20)))) + } + } +} + +contract MockAerodromeV2RouterIntegration { + uint256 public configuredBuyAmount; + + function setBuyAmount(uint256 amount) external { + configuredBuyAmount = amount; + } + + function swapExactTokensForTokens(uint256 amountIn, uint256 amountOutMin, IAerodromeV2Router.Route[] memory routes, address, uint256) external returns (uint256[] memory amounts) { + require(routes.length > 0, "invalid routes"); + address sellToken = routes[0].from; + address buyToken = routes[routes.length - 1].to; + require(MockERC20(sellToken).transferFrom(msg.sender, address(this), amountIn), "TransferFrom failed"); + uint256 amountOut = configuredBuyAmount == 0 ? amountOutMin : configuredBuyAmount; + require(MockERC20(buyToken).transfer(msg.sender, amountOut), "Transfer failed"); + amounts = new uint256[](routes.length + 1); + amounts[0] = amountIn; + amounts[routes.length] = amountOut; + } +} + +contract MockAerodromeCLRouterIntegration { + uint256 public configuredBuyAmount; + + function setBuyAmount(uint256 amount) external { + configuredBuyAmount = amount; + } + + function exactInput(IAerodromeCLSwapRouter.ExactInputParams calldata params) external payable returns (uint256 amountOut) { + (address sellToken, address buyToken) = _decodePathEndpoints(params.path); + require(MockERC20(sellToken).transferFrom(msg.sender, address(this), params.amountIn), "TransferFrom failed"); + amountOut = configuredBuyAmount == 0 ? params.amountOutMinimum : configuredBuyAmount; + require(MockERC20(buyToken).transfer(msg.sender, amountOut), "Transfer failed"); + } + + function _decodePathEndpoints(bytes memory path) internal pure returns (address firstToken, address lastToken) { + require(path.length >= 43, "invalid path"); + assembly { + firstToken := shr(96, mload(add(path, 0x20))) + lastToken := shr(96, mload(add(add(path, 0x20), sub(mload(path), 20)))) + } + } +} + +contract SwapAdapterIntegrationTest is Test { + AgentWalletFactory factory; + AdapterRegistry registry; + FeeTracker feeTracker; + YieldSeekerSwapSellPolicy sellPolicy; + UniswapV3SwapAdapter uniswapAdapter; + AerodromeV2SwapAdapter aerodromeV2Adapter; + AerodromeCLSwapAdapter aerodromeClAdapter; + MockUniswapV3RouterIntegration uniswapRouter; + MockAerodromeV2RouterIntegration aerodromeV2Router; + MockAerodromeCLRouterIntegration aerodromeClRouter; + MockERC20 baseAsset; + MockERC20 sellToken; + MockERC20 otherToken; + + address admin = makeAddr("admin"); + address operator = makeAddr("operator"); + address user = makeAddr("user"); + address feeCollector = makeAddr("feeCollector"); + + function _decodeUint(bytes memory data) internal pure returns (uint256) { + return abi.decode(abi.decode(data, (bytes)), (uint256)); + } + + function _createWallet() internal returns (AgentWalletV1 wallet) { + vm.prank(operator); + wallet = factory.createAgentWallet(user, 1, address(baseAsset)); + } + + function _uniswapRoute(address fromToken, address toToken) internal pure returns (AWKUniswapV3SwapAdapter.SwapRoute memory route) { + route.path = new address[](2); + route.path[0] = fromToken; + route.path[1] = toToken; + route.fees = new uint24[](1); + route.fees[0] = 3000; + } + + function _aerodromeV2Route(address fromToken, address toToken) internal pure returns (AWKAerodromeV2SwapAdapter.SwapRoute memory route) { + route.path = new address[](2); + route.path[0] = fromToken; + route.path[1] = toToken; + route.stables = new bool[](1); + route.stables[0] = false; + } + + function _aerodromeClRoute(address fromToken, address toToken) internal pure returns (AWKAerodromeCLSwapAdapter.SwapRoute memory route) { + route.path = new address[](2); + route.path[0] = fromToken; + route.path[1] = toToken; + route.tickSpacings = new int24[](1); + route.tickSpacings[0] = 100; + } + + function setUp() public { + baseAsset = new MockERC20("Mock USDC", "mUSDC"); + sellToken = new MockERC20("Mock Yield", "mYLD"); + otherToken = new MockERC20("Other", "mOTH"); + uniswapRouter = new MockUniswapV3RouterIntegration(); + aerodromeV2Router = new MockAerodromeV2RouterIntegration(); + aerodromeClRouter = new MockAerodromeCLRouterIntegration(); + vm.startPrank(admin); + registry = new AdapterRegistry(admin, admin); + feeTracker = new FeeTracker(admin); + feeTracker.setFeeConfig(1000, feeCollector); + factory = new AgentWalletFactory(admin, operator); + factory.setAdapterRegistry(registry); + factory.setFeeTracker(feeTracker); + AgentWalletV1 walletImplementation = new AgentWalletV1(address(factory)); + factory.setAgentWalletImplementation(walletImplementation); + sellPolicy = new YieldSeekerSwapSellPolicy(admin, admin, false); + sellPolicy.addSellableToken(address(sellToken)); + uniswapAdapter = new UniswapV3SwapAdapter(address(uniswapRouter), address(sellPolicy)); + aerodromeV2Adapter = new AerodromeV2SwapAdapter(address(aerodromeV2Router), address(0xFACADE), address(sellPolicy)); + aerodromeClAdapter = new AerodromeCLSwapAdapter(address(aerodromeClRouter), address(sellPolicy)); + registry.registerAdapter(address(uniswapAdapter)); + registry.registerAdapter(address(aerodromeV2Adapter)); + registry.registerAdapter(address(aerodromeClAdapter)); + registry.setTargetAdapter(address(uniswapRouter), address(uniswapAdapter)); + registry.setTargetAdapter(address(aerodromeV2Router), address(aerodromeV2Adapter)); + registry.setTargetAdapter(address(aerodromeClRouter), address(aerodromeClAdapter)); + vm.stopPrank(); + baseAsset.mint(address(uniswapRouter), 2_000_000e6); + baseAsset.mint(address(aerodromeV2Router), 2_000_000e6); + baseAsset.mint(address(aerodromeClRouter), 2_000_000e6); + otherToken.mint(address(uniswapRouter), 2_000_000e6); + otherToken.mint(address(aerodromeV2Router), 2_000_000e6); + otherToken.mint(address(aerodromeClRouter), 2_000_000e6); + } + + function test_UniswapSwap_ThroughWallet_Succeeds() public { + AgentWalletV1 wallet = _createWallet(); + sellToken.mint(address(wallet), 1_000e6); + uniswapRouter.setBuyAmount(500e6); + AWKUniswapV3SwapAdapter.SwapRoute memory route = _uniswapRoute(address(sellToken), address(baseAsset)); + bytes memory data = abi.encodeCall(uniswapAdapter.swap, (address(sellToken), address(baseAsset), route, uint256(100e6), uint256(400e6))); + vm.prank(user); + bytes memory result = wallet.executeViaAdapter(address(uniswapAdapter), address(uniswapRouter), data); + uint256 buyAmount = _decodeUint(result); + assertEq(buyAmount, 500e6); + assertEq(sellToken.balanceOf(address(wallet)), 900e6); + assertEq(baseAsset.balanceOf(address(wallet)), 500e6); + } + + function test_AerodromeV2Swap_ThroughWallet_Succeeds() public { + AgentWalletV1 wallet = _createWallet(); + sellToken.mint(address(wallet), 1_000e6); + aerodromeV2Router.setBuyAmount(450e6); + AWKAerodromeV2SwapAdapter.SwapRoute memory route = _aerodromeV2Route(address(sellToken), address(baseAsset)); + bytes memory data = abi.encodeCall(aerodromeV2Adapter.swap, (address(sellToken), address(baseAsset), route, uint256(100e6), uint256(300e6))); + vm.prank(user); + bytes memory result = wallet.executeViaAdapter(address(aerodromeV2Adapter), address(aerodromeV2Router), data); + uint256 buyAmount = _decodeUint(result); + assertEq(buyAmount, 450e6); + assertEq(baseAsset.balanceOf(address(wallet)), 450e6); + } + + function test_AerodromeCLSwap_ThroughWallet_Succeeds() public { + AgentWalletV1 wallet = _createWallet(); + sellToken.mint(address(wallet), 1_000e6); + aerodromeClRouter.setBuyAmount(470e6); + AWKAerodromeCLSwapAdapter.SwapRoute memory route = _aerodromeClRoute(address(sellToken), address(baseAsset)); + bytes memory data = abi.encodeCall(aerodromeClAdapter.swap, (address(sellToken), address(baseAsset), route, uint256(100e6), uint256(300e6))); + vm.prank(user); + bytes memory result = wallet.executeViaAdapter(address(aerodromeClAdapter), address(aerodromeClRouter), data); + uint256 buyAmount = _decodeUint(result); + assertEq(buyAmount, 470e6); + assertEq(baseAsset.balanceOf(address(wallet)), 470e6); + } + + function test_SwapBatchAcrossAdapters_Succeeds() public { + AgentWalletV1 wallet = _createWallet(); + sellToken.mint(address(wallet), 1_000e6); + uniswapRouter.setBuyAmount(120e6); + aerodromeV2Router.setBuyAmount(130e6); + aerodromeClRouter.setBuyAmount(140e6); + AWKUniswapV3SwapAdapter.SwapRoute memory uniRoute = _uniswapRoute(address(sellToken), address(baseAsset)); + AWKAerodromeV2SwapAdapter.SwapRoute memory v2Route = _aerodromeV2Route(address(sellToken), address(baseAsset)); + AWKAerodromeCLSwapAdapter.SwapRoute memory clRoute = _aerodromeClRoute(address(sellToken), address(baseAsset)); + address[] memory adapters = new address[](3); + address[] memory targets = new address[](3); + bytes[] memory datas = new bytes[](3); + adapters[0] = address(uniswapAdapter); + adapters[1] = address(aerodromeV2Adapter); + adapters[2] = address(aerodromeClAdapter); + targets[0] = address(uniswapRouter); + targets[1] = address(aerodromeV2Router); + targets[2] = address(aerodromeClRouter); + datas[0] = abi.encodeCall(uniswapAdapter.swap, (address(sellToken), address(baseAsset), uniRoute, uint256(100e6), uint256(100e6))); + datas[1] = abi.encodeCall(aerodromeV2Adapter.swap, (address(sellToken), address(baseAsset), v2Route, uint256(100e6), uint256(100e6))); + datas[2] = abi.encodeCall(aerodromeClAdapter.swap, (address(sellToken), address(baseAsset), clRoute, uint256(100e6), uint256(100e6))); + vm.prank(user); + bytes[] memory results = wallet.executeViaAdapterBatch(adapters, targets, datas); + assertEq(_decodeUint(results[0]), 120e6); + assertEq(_decodeUint(results[1]), 130e6); + assertEq(_decodeUint(results[2]), 140e6); + assertEq(baseAsset.balanceOf(address(wallet)), 390e6); + assertEq(sellToken.balanceOf(address(wallet)), 700e6); + } + + function test_UniswapSwap_RevertsOnEndpointMismatch() public { + AgentWalletV1 wallet = _createWallet(); + sellToken.mint(address(wallet), 500e6); + AWKUniswapV3SwapAdapter.SwapRoute memory route = _uniswapRoute(address(sellToken), address(otherToken)); + bytes memory data = abi.encodeCall(uniswapAdapter.swap, (address(sellToken), address(baseAsset), route, uint256(100e6), uint256(50e6))); + bytes memory innerError = abi.encodeWithSelector(InvalidRouteEndpoints.selector, address(sellToken), address(baseAsset)); + vm.prank(user); + vm.expectRevert(abi.encodeWithSelector(AdapterExecutionFailed.selector, innerError)); + wallet.executeViaAdapter(address(uniswapAdapter), address(uniswapRouter), data); + } + + function test_Swap_RevertsWhenSellPolicyBlocksToken() public { + AgentWalletV1 wallet = _createWallet(); + sellToken.mint(address(wallet), 500e6); + vm.prank(admin); + sellPolicy.removeSellableToken(address(sellToken)); + AWKUniswapV3SwapAdapter.SwapRoute memory route = _uniswapRoute(address(sellToken), address(baseAsset)); + bytes memory data = abi.encodeCall(uniswapAdapter.swap, (address(sellToken), address(baseAsset), route, uint256(100e6), uint256(50e6))); + bytes memory innerError = abi.encodeWithSelector(SellTokenNotAllowed.selector, address(sellToken)); + vm.prank(user); + vm.expectRevert(abi.encodeWithSelector(AdapterExecutionFailed.selector, innerError)); + wallet.executeViaAdapter(address(uniswapAdapter), address(uniswapRouter), data); + } + + function test_Swap_RevertsWhenBuyingNonBaseAsset() public { + AgentWalletV1 wallet = _createWallet(); + sellToken.mint(address(wallet), 500e6); + AWKUniswapV3SwapAdapter.SwapRoute memory route = _uniswapRoute(address(sellToken), address(otherToken)); + bytes memory data = abi.encodeCall(uniswapAdapter.swap, (address(sellToken), address(otherToken), route, uint256(100e6), uint256(50e6))); + bytes memory innerError = abi.encodeWithSelector(AssetNotAllowed.selector); + vm.prank(user); + vm.expectRevert(abi.encodeWithSelector(AdapterExecutionFailed.selector, innerError)); + wallet.executeViaAdapter(address(uniswapAdapter), address(uniswapRouter), data); + } + + function test_WalletEnforcesTargetToAdapterMapping() public { + AgentWalletV1 wallet = _createWallet(); + sellToken.mint(address(wallet), 500e6); + AWKUniswapV3SwapAdapter.SwapRoute memory route = _uniswapRoute(address(sellToken), address(baseAsset)); + bytes memory data = abi.encodeCall(uniswapAdapter.swap, (address(sellToken), address(baseAsset), route, uint256(100e6), uint256(50e6))); + vm.prank(user); + vm.expectRevert(abi.encodeWithSelector(AWKErrors.AdapterNotRegistered.selector, address(uniswapAdapter))); + wallet.executeViaAdapter(address(uniswapAdapter), address(aerodromeV2Router), data); + } + + function test_UniswapSwap_RecordsAndConvertsYieldTokenFees() public { + AgentWalletV1 wallet = _createWallet(); + sellToken.mint(address(wallet), 1_000e6); + vm.prank(address(wallet)); + feeTracker.recordAgentYieldTokenEarned(address(sellToken), 100e6); + assertEq(feeTracker.agentYieldTokenFeesOwed(address(wallet), address(sellToken)), 10e6); + uniswapRouter.setBuyAmount(200e6); + AWKUniswapV3SwapAdapter.SwapRoute memory route = _uniswapRoute(address(sellToken), address(baseAsset)); + bytes memory data = abi.encodeCall(uniswapAdapter.swap, (address(sellToken), address(baseAsset), route, uint256(50e6), uint256(100e6))); + vm.prank(user); + wallet.executeViaAdapter(address(uniswapAdapter), address(uniswapRouter), data); + assertEq(feeTracker.agentYieldTokenFeesOwed(address(wallet), address(sellToken)), 0); + assertEq(feeTracker.agentFeesCharged(address(wallet)), 40e6); + } +} diff --git a/test/unit/AdapterRegistry.t.sol b/test/unit/AdapterRegistry.t.sol index dce036e..e09b0f1 100644 --- a/test/unit/AdapterRegistry.t.sol +++ b/test/unit/AdapterRegistry.t.sol @@ -677,7 +677,4 @@ contract AdapterRegistryTest is Test { } /// @dev Simple mock adapter contract for testing -contract MockAdapter { - // Empty contract that has code (not EOA) - - } +contract MockAdapter {} diff --git a/test/unit/adapters/AaveV3Adapter.t.sol b/test/unit/adapters/AaveV3Adapter.t.sol index c74d59f..2c743ca 100644 --- a/test/unit/adapters/AaveV3Adapter.t.sol +++ b/test/unit/adapters/AaveV3Adapter.t.sol @@ -3,7 +3,7 @@ pragma solidity 0.8.28; import {YieldSeekerFeeTracker} from "../../../src/FeeTracker.sol"; import {YieldSeekerAaveV3Adapter} from "../../../src/adapters/AaveV3Adapter.sol"; -import {InvalidBaseAsset} from "../../../src/adapters/Adapter.sol"; +import {AssetNotAllowed} from "../../../src/adapters/Adapter.sol"; import {AWKErrors} from "../../../src/agentwalletkit/AWKErrors.sol"; import {MockAToken, MockAaveV3Pool} from "../../mocks/MockAaveV3.sol"; import {MockERC20} from "../../mocks/MockERC20.sol"; @@ -62,7 +62,7 @@ contract AaveV3AdapterTest is Test { function test_Execute_Deposit_InvalidAsset_Reverts() public { MockAaveV3Pool badPool = new MockAaveV3Pool(address(altAsset)); MockAToken badAToken = MockAToken(badPool.aToken()); - vm.expectRevert(abi.encodeWithSelector(InvalidBaseAsset.selector)); + vm.expectRevert(abi.encodeWithSelector(AssetNotAllowed.selector)); wallet.executeAdapter(address(adapter), address(badAToken), abi.encodeWithSelector(adapter.deposit.selector, 1e6)); } diff --git a/test/unit/adapters/AerodromeCLSwapAdapter.t.sol b/test/unit/adapters/AerodromeCLSwapAdapter.t.sol new file mode 100644 index 0000000..f690ed2 --- /dev/null +++ b/test/unit/adapters/AerodromeCLSwapAdapter.t.sol @@ -0,0 +1,189 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.28; + +import {YieldSeekerFeeTracker} from "../../../src/FeeTracker.sol"; +import {AssetNotAllowed, BaseAssetNotAllowed} from "../../../src/adapters/Adapter.sol"; +import {YieldSeekerAerodromeCLSwapAdapter} from "../../../src/adapters/AerodromeCLSwapAdapter.sol"; +import {SellTokenNotAllowed, YieldSeekerSwapSellPolicy} from "../../../src/adapters/SwapSellPolicy.sol"; +import {AWKErrors} from "../../../src/agentwalletkit/AWKErrors.sol"; +import {AWKAerodromeCLSwapAdapter, IAerodromeCLSwapRouter, InvalidAerodromeCLRouterTarget, InvalidTickSpacing} from "../../../src/agentwalletkit/adapters/AWKAerodromeCLSwapAdapter.sol"; +import {InsufficientOutput, InvalidRouteEndpoints, InvalidRouteLength, InvalidSwapRoute, InvalidSwapTokenAddress} from "../../../src/agentwalletkit/adapters/AWKSwapAdapter.sol"; +import {MockERC20} from "../../mocks/MockERC20.sol"; +import {AdapterWalletHarness} from "./AdapterHarness.t.sol"; +import {Test} from "forge-std/Test.sol"; + +contract MockAerodromeCLRouter { + uint256 public configuredBuyAmount; + bool public shouldRevert; + + function setBuyAmount(uint256 amount) external { + configuredBuyAmount = amount; + } + + function setRevert(bool value) external { + shouldRevert = value; + } + + function exactInput(IAerodromeCLSwapRouter.ExactInputParams calldata params) external payable returns (uint256 amountOut) { + if (shouldRevert) revert("swap failed"); + (address sellToken, address buyToken) = _decodePathEndpoints(params.path); + require(MockERC20(sellToken).transferFrom(msg.sender, address(this), params.amountIn), "TransferFrom failed"); + amountOut = configuredBuyAmount == 0 ? params.amountOutMinimum : configuredBuyAmount; + require(MockERC20(buyToken).transfer(msg.sender, amountOut), "Transfer failed"); + } + + function _decodePathEndpoints(bytes memory path) internal pure returns (address firstToken, address lastToken) { + require(path.length >= 43, "invalid path"); + assembly { + firstToken := shr(96, mload(add(path, 0x20))) + lastToken := shr(96, mload(add(add(path, 0x20), sub(mload(path), 20)))) + } + } +} + +contract AerodromeCLSwapAdapterTest is Test { + YieldSeekerAerodromeCLSwapAdapter adapter; + YieldSeekerFeeTracker feeTracker; + YieldSeekerSwapSellPolicy sellPolicy; + AdapterWalletHarness wallet; + MockERC20 baseAsset; + MockERC20 sellToken; + MockERC20 otherToken; + MockAerodromeCLRouter router; + + function _decodeUint(bytes memory data) internal pure returns (uint256) { + return abi.decode(abi.decode(data, (bytes)), (uint256)); + } + + function _buildRoute(address from, address to) internal pure returns (AWKAerodromeCLSwapAdapter.SwapRoute memory route) { + route.path = new address[](2); + route.path[0] = from; + route.path[1] = to; + route.tickSpacings = new int24[](1); + route.tickSpacings[0] = 100; + } + + function _executeSwap(address buyToken, AWKAerodromeCLSwapAdapter.SwapRoute memory route, uint256 sellAmount, uint256 minBuyAmount) internal returns (bytes memory) { + bytes memory data = abi.encodeWithSelector(adapter.swap.selector, address(sellToken), buyToken, route, sellAmount, minBuyAmount); + return wallet.executeAdapter(address(adapter), address(router), data); + } + + function setUp() public { + baseAsset = new MockERC20("Mock USDC", "mUSDC"); + sellToken = new MockERC20("Mock Token", "mTKN"); + otherToken = new MockERC20("Other Token", "oTKN"); + feeTracker = new YieldSeekerFeeTracker(address(this)); + feeTracker.setFeeConfig(1000, address(0xBEEF)); + sellPolicy = new YieldSeekerSwapSellPolicy(address(this), address(this), false); + sellPolicy.addSellableToken(address(sellToken)); + router = new MockAerodromeCLRouter(); + adapter = new YieldSeekerAerodromeCLSwapAdapter(address(router), address(sellPolicy)); + wallet = new AdapterWalletHarness(baseAsset, feeTracker); + baseAsset.mint(address(router), 1_000_000e6); + otherToken.mint(address(router), 1_000_000e18); + sellToken.mint(address(wallet), 1_000e18); + } + + function test_Execute_Swap_Succeeds() public { + router.setBuyAmount(500e6); + AWKAerodromeCLSwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + bytes memory result = _executeSwap(address(baseAsset), route, 100e18, 400e6); + uint256 buyAmount = _decodeUint(result); + assertEq(buyAmount, 500e6); + assertEq(sellToken.balanceOf(address(wallet)), 900e18); + assertEq(baseAsset.balanceOf(address(wallet)), 500e6); + } + + function test_Execute_Swap_RevertsOnLowOutput() public { + router.setBuyAmount(100e6); + AWKAerodromeCLSwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + vm.expectRevert(abi.encodeWithSelector(InsufficientOutput.selector, uint256(100e6), uint256(150e6))); + _executeSwap(address(baseAsset), route, 100e18, 150e6); + } + + function test_Execute_Swap_RevertsOnZeroAmounts() public { + AWKAerodromeCLSwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + vm.expectRevert(abi.encodeWithSelector(AWKErrors.ZeroAmount.selector)); + _executeSwap(address(baseAsset), route, 0, 0); + } + + function test_Execute_Swap_RevertsOnWrongTarget() public { + AWKAerodromeCLSwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + bytes memory data = abi.encodeWithSelector(adapter.swap.selector, address(sellToken), address(baseAsset), route, uint256(10e18), uint256(1e6)); + vm.expectRevert(abi.encodeWithSelector(InvalidAerodromeCLRouterTarget.selector, address(0x1234), address(router))); + wallet.executeAdapter(address(adapter), address(0x1234), data); + } + + function test_Execute_Swap_RevertsOnInvalidRouteLength() public { + AWKAerodromeCLSwapAdapter.SwapRoute memory route; + route.path = new address[](1); + route.path[0] = address(sellToken); + route.tickSpacings = new int24[](0); + vm.expectRevert(abi.encodeWithSelector(InvalidRouteLength.selector, uint256(1))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnTickPathMismatch() public { + AWKAerodromeCLSwapAdapter.SwapRoute memory route; + route.path = new address[](2); + route.path[0] = address(sellToken); + route.path[1] = address(baseAsset); + route.tickSpacings = new int24[](0); + vm.expectRevert(abi.encodeWithSelector(InvalidSwapRoute.selector)); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnInvalidTickSpacing() public { + AWKAerodromeCLSwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + route.tickSpacings[0] = 10; + vm.expectRevert(abi.encodeWithSelector(InvalidTickSpacing.selector, int24(10))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnRouteSellEndpointMismatch() public { + AWKAerodromeCLSwapAdapter.SwapRoute memory route = _buildRoute(address(otherToken), address(baseAsset)); + vm.expectRevert(abi.encodeWithSelector(InvalidRouteEndpoints.selector, address(sellToken), address(baseAsset))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnRouteBuyEndpointMismatch() public { + AWKAerodromeCLSwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(otherToken)); + vm.expectRevert(abi.encodeWithSelector(InvalidRouteEndpoints.selector, address(sellToken), address(baseAsset))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnZeroPathToken() public { + AWKAerodromeCLSwapAdapter.SwapRoute memory route; + route.path = new address[](3); + route.path[0] = address(sellToken); + route.path[1] = address(0); + route.path[2] = address(baseAsset); + route.tickSpacings = new int24[](2); + route.tickSpacings[0] = 100; + route.tickSpacings[1] = 100; + vm.expectRevert(abi.encodeWithSelector(InvalidSwapTokenAddress.selector, address(0))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnNonSellableToken() public { + sellPolicy.removeSellableToken(address(sellToken)); + AWKAerodromeCLSwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + vm.expectRevert(abi.encodeWithSelector(SellTokenNotAllowed.selector, address(sellToken))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsWhenBuyTokenNotBaseAsset() public { + AWKAerodromeCLSwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(otherToken)); + vm.expectRevert(abi.encodeWithSelector(AssetNotAllowed.selector)); + _executeSwap(address(otherToken), route, 100e18, 1e18); + } + + function test_Execute_Swap_RevertsWhenSellingBaseAsset() public { + sellPolicy.addSellableToken(address(baseAsset)); + baseAsset.mint(address(wallet), 1_000e6); + AWKAerodromeCLSwapAdapter.SwapRoute memory route = _buildRoute(address(baseAsset), address(otherToken)); + bytes memory data = abi.encodeWithSelector(adapter.swap.selector, address(baseAsset), address(otherToken), route, uint256(100e6), uint256(1e18)); + vm.expectRevert(abi.encodeWithSelector(BaseAssetNotAllowed.selector)); + wallet.executeAdapter(address(adapter), address(router), data); + } +} diff --git a/test/unit/adapters/AerodromeV2SwapAdapter.t.sol b/test/unit/adapters/AerodromeV2SwapAdapter.t.sol new file mode 100644 index 0000000..064460a --- /dev/null +++ b/test/unit/adapters/AerodromeV2SwapAdapter.t.sol @@ -0,0 +1,179 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.28; + +import {YieldSeekerFeeTracker} from "../../../src/FeeTracker.sol"; +import {AssetNotAllowed, BaseAssetNotAllowed} from "../../../src/adapters/Adapter.sol"; +import {YieldSeekerAerodromeV2SwapAdapter} from "../../../src/adapters/AerodromeV2SwapAdapter.sol"; +import {SellTokenNotAllowed, YieldSeekerSwapSellPolicy} from "../../../src/adapters/SwapSellPolicy.sol"; +import {AWKErrors} from "../../../src/agentwalletkit/AWKErrors.sol"; +import {AWKAerodromeV2SwapAdapter, IAerodromeV2Router, InvalidAerodromeV2RouterTarget} from "../../../src/agentwalletkit/adapters/AWKAerodromeV2SwapAdapter.sol"; +import {InsufficientOutput, InvalidRouteEndpoints, InvalidRouteLength, InvalidSwapRoute, InvalidSwapTokenAddress} from "../../../src/agentwalletkit/adapters/AWKSwapAdapter.sol"; +import {MockERC20} from "../../mocks/MockERC20.sol"; +import {AdapterWalletHarness} from "./AdapterHarness.t.sol"; +import {Test} from "forge-std/Test.sol"; + +contract MockAerodromeV2Router { + uint256 public configuredBuyAmount; + bool public shouldRevert; + + function setBuyAmount(uint256 amount) external { + configuredBuyAmount = amount; + } + + function setRevert(bool value) external { + shouldRevert = value; + } + + function swapExactTokensForTokens(uint256 amountIn, uint256 amountOutMin, IAerodromeV2Router.Route[] memory routes, address, uint256) external returns (uint256[] memory amounts) { + if (shouldRevert) revert("swap failed"); + require(routes.length > 0, "invalid routes"); + address sellToken = routes[0].from; + address buyToken = routes[routes.length - 1].to; + require(MockERC20(sellToken).transferFrom(msg.sender, address(this), amountIn), "TransferFrom failed"); + uint256 amountOut = configuredBuyAmount == 0 ? amountOutMin : configuredBuyAmount; + require(MockERC20(buyToken).transfer(msg.sender, amountOut), "Transfer failed"); + amounts = new uint256[](routes.length + 1); + amounts[0] = amountIn; + amounts[routes.length] = amountOut; + } +} + +contract AerodromeV2SwapAdapterTest is Test { + YieldSeekerAerodromeV2SwapAdapter adapter; + YieldSeekerFeeTracker feeTracker; + YieldSeekerSwapSellPolicy sellPolicy; + AdapterWalletHarness wallet; + MockERC20 baseAsset; + MockERC20 sellToken; + MockERC20 otherToken; + MockAerodromeV2Router router; + + function _decodeUint(bytes memory data) internal pure returns (uint256) { + return abi.decode(abi.decode(data, (bytes)), (uint256)); + } + + function _buildRoute(address from, address to) internal pure returns (AWKAerodromeV2SwapAdapter.SwapRoute memory route) { + route.path = new address[](2); + route.path[0] = from; + route.path[1] = to; + route.stables = new bool[](1); + route.stables[0] = false; + } + + function _executeSwap(address buyToken, AWKAerodromeV2SwapAdapter.SwapRoute memory route, uint256 sellAmount, uint256 minBuyAmount) internal returns (bytes memory) { + bytes memory data = abi.encodeWithSelector(adapter.swap.selector, address(sellToken), buyToken, route, sellAmount, minBuyAmount); + return wallet.executeAdapter(address(adapter), address(router), data); + } + + function setUp() public { + baseAsset = new MockERC20("Mock USDC", "mUSDC"); + sellToken = new MockERC20("Mock Token", "mTKN"); + otherToken = new MockERC20("Other Token", "oTKN"); + feeTracker = new YieldSeekerFeeTracker(address(this)); + feeTracker.setFeeConfig(1000, address(0xBEEF)); + sellPolicy = new YieldSeekerSwapSellPolicy(address(this), address(this), false); + sellPolicy.addSellableToken(address(sellToken)); + router = new MockAerodromeV2Router(); + adapter = new YieldSeekerAerodromeV2SwapAdapter(address(router), address(0xFACADE), address(sellPolicy)); + wallet = new AdapterWalletHarness(baseAsset, feeTracker); + baseAsset.mint(address(router), 1_000_000e6); + otherToken.mint(address(router), 1_000_000e18); + sellToken.mint(address(wallet), 1_000e18); + } + + function test_Execute_Swap_Succeeds() public { + router.setBuyAmount(500e6); + AWKAerodromeV2SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + bytes memory result = _executeSwap(address(baseAsset), route, 100e18, 400e6); + uint256 buyAmount = _decodeUint(result); + assertEq(buyAmount, 500e6); + assertEq(sellToken.balanceOf(address(wallet)), 900e18); + assertEq(baseAsset.balanceOf(address(wallet)), 500e6); + } + + function test_Execute_Swap_RevertsOnLowOutput() public { + router.setBuyAmount(100e6); + AWKAerodromeV2SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + vm.expectRevert(abi.encodeWithSelector(InsufficientOutput.selector, uint256(100e6), uint256(150e6))); + _executeSwap(address(baseAsset), route, 100e18, 150e6); + } + + function test_Execute_Swap_RevertsOnZeroAmounts() public { + AWKAerodromeV2SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + vm.expectRevert(abi.encodeWithSelector(AWKErrors.ZeroAmount.selector)); + _executeSwap(address(baseAsset), route, 0, 0); + } + + function test_Execute_Swap_RevertsOnWrongTarget() public { + AWKAerodromeV2SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + bytes memory data = abi.encodeWithSelector(adapter.swap.selector, address(sellToken), address(baseAsset), route, uint256(10e18), uint256(1e6)); + vm.expectRevert(abi.encodeWithSelector(InvalidAerodromeV2RouterTarget.selector, address(0x1234), address(router))); + wallet.executeAdapter(address(adapter), address(0x1234), data); + } + + function test_Execute_Swap_RevertsOnInvalidRouteLength() public { + AWKAerodromeV2SwapAdapter.SwapRoute memory route; + route.path = new address[](1); + route.path[0] = address(sellToken); + route.stables = new bool[](0); + vm.expectRevert(abi.encodeWithSelector(InvalidRouteLength.selector, uint256(1))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnStablePathMismatch() public { + AWKAerodromeV2SwapAdapter.SwapRoute memory route; + route.path = new address[](2); + route.path[0] = address(sellToken); + route.path[1] = address(baseAsset); + route.stables = new bool[](0); + vm.expectRevert(abi.encodeWithSelector(InvalidSwapRoute.selector)); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnRouteSellEndpointMismatch() public { + AWKAerodromeV2SwapAdapter.SwapRoute memory route = _buildRoute(address(otherToken), address(baseAsset)); + vm.expectRevert(abi.encodeWithSelector(InvalidRouteEndpoints.selector, address(sellToken), address(baseAsset))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnRouteBuyEndpointMismatch() public { + AWKAerodromeV2SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(otherToken)); + vm.expectRevert(abi.encodeWithSelector(InvalidRouteEndpoints.selector, address(sellToken), address(baseAsset))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnZeroPathToken() public { + AWKAerodromeV2SwapAdapter.SwapRoute memory route; + route.path = new address[](3); + route.path[0] = address(sellToken); + route.path[1] = address(0); + route.path[2] = address(baseAsset); + route.stables = new bool[](2); + route.stables[0] = false; + route.stables[1] = false; + vm.expectRevert(abi.encodeWithSelector(InvalidSwapTokenAddress.selector, address(0))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnNonSellableToken() public { + sellPolicy.removeSellableToken(address(sellToken)); + AWKAerodromeV2SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + vm.expectRevert(abi.encodeWithSelector(SellTokenNotAllowed.selector, address(sellToken))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsWhenBuyTokenNotBaseAsset() public { + AWKAerodromeV2SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(otherToken)); + vm.expectRevert(abi.encodeWithSelector(AssetNotAllowed.selector)); + _executeSwap(address(otherToken), route, 100e18, 1e18); + } + + function test_Execute_Swap_RevertsWhenSellingBaseAsset() public { + sellPolicy.addSellableToken(address(baseAsset)); + baseAsset.mint(address(wallet), 1_000e6); + AWKAerodromeV2SwapAdapter.SwapRoute memory route = _buildRoute(address(baseAsset), address(otherToken)); + bytes memory data = abi.encodeWithSelector(adapter.swap.selector, address(baseAsset), address(otherToken), route, uint256(100e6), uint256(1e18)); + vm.expectRevert(abi.encodeWithSelector(BaseAssetNotAllowed.selector)); + wallet.executeAdapter(address(adapter), address(router), data); + } +} diff --git a/test/unit/adapters/CompoundV2Adapter.t.sol b/test/unit/adapters/CompoundV2Adapter.t.sol index 0270ebe..c7db9ab 100644 --- a/test/unit/adapters/CompoundV2Adapter.t.sol +++ b/test/unit/adapters/CompoundV2Adapter.t.sol @@ -2,7 +2,7 @@ pragma solidity 0.8.28; import {YieldSeekerFeeTracker} from "../../../src/FeeTracker.sol"; -import {InvalidBaseAsset} from "../../../src/adapters/Adapter.sol"; +import {AssetNotAllowed} from "../../../src/adapters/Adapter.sol"; import {YieldSeekerCompoundV2Adapter} from "../../../src/adapters/CompoundV2Adapter.sol"; import {AWKErrors} from "../../../src/agentwalletkit/AWKErrors.sol"; import {MockCToken} from "../../mocks/MockCompoundV2.sol"; @@ -59,7 +59,7 @@ contract CompoundV2AdapterTest is Test { function test_Execute_Deposit_InvalidAsset_Reverts() public { MockCToken badCToken = new MockCToken(address(altAsset), "Bad", "BAD"); - vm.expectRevert(abi.encodeWithSelector(InvalidBaseAsset.selector)); + vm.expectRevert(abi.encodeWithSelector(AssetNotAllowed.selector)); wallet.executeAdapter(address(adapter), address(badCToken), abi.encodeWithSelector(adapter.deposit.selector, 1e6)); } diff --git a/test/unit/adapters/CompoundV3Adapter.t.sol b/test/unit/adapters/CompoundV3Adapter.t.sol index c764c12..1dfc1f0 100644 --- a/test/unit/adapters/CompoundV3Adapter.t.sol +++ b/test/unit/adapters/CompoundV3Adapter.t.sol @@ -2,7 +2,7 @@ pragma solidity 0.8.28; import {YieldSeekerFeeTracker} from "../../../src/FeeTracker.sol"; -import {InvalidBaseAsset} from "../../../src/adapters/Adapter.sol"; +import {AssetNotAllowed} from "../../../src/adapters/Adapter.sol"; import {YieldSeekerCompoundV3Adapter} from "../../../src/adapters/CompoundV3Adapter.sol"; import {AWKErrors} from "../../../src/agentwalletkit/AWKErrors.sol"; import {MockCompoundV3Comet} from "../../mocks/MockCompoundV3.sol"; @@ -59,7 +59,7 @@ contract CompoundV3AdapterTest is Test { function test_Execute_Deposit_InvalidAsset_Reverts() public { MockCompoundV3Comet badComet = new MockCompoundV3Comet(address(altAsset)); - vm.expectRevert(abi.encodeWithSelector(InvalidBaseAsset.selector)); + vm.expectRevert(abi.encodeWithSelector(AssetNotAllowed.selector)); wallet.executeAdapter(address(adapter), address(badComet), abi.encodeWithSelector(adapter.deposit.selector, 1e6)); } diff --git a/test/unit/adapters/ERC4626Adapter.t.sol b/test/unit/adapters/ERC4626Adapter.t.sol index 28a0bcf..c3d459f 100644 --- a/test/unit/adapters/ERC4626Adapter.t.sol +++ b/test/unit/adapters/ERC4626Adapter.t.sol @@ -2,7 +2,7 @@ pragma solidity 0.8.28; import {YieldSeekerFeeTracker} from "../../../src/FeeTracker.sol"; -import {InvalidBaseAsset} from "../../../src/adapters/Adapter.sol"; +import {AssetNotAllowed} from "../../../src/adapters/Adapter.sol"; import {YieldSeekerERC4626Adapter} from "../../../src/adapters/ERC4626Adapter.sol"; import {AWKErrors} from "../../../src/agentwalletkit/AWKErrors.sol"; import {MockERC20} from "../../mocks/MockERC20.sol"; @@ -59,7 +59,7 @@ contract ERC4626AdapterTest is Test { function test_Execute_Deposit_InvalidAsset_Reverts() public { MockERC4626 badVault = new MockERC4626(address(altAsset), "Bad", "bALT"); - vm.expectRevert(abi.encodeWithSelector(InvalidBaseAsset.selector)); + vm.expectRevert(abi.encodeWithSelector(AssetNotAllowed.selector)); wallet.executeAdapter(address(adapter), address(badVault), abi.encodeWithSelector(adapter.deposit.selector, 1e6)); } diff --git a/test/unit/adapters/SwapSellPolicy.t.sol b/test/unit/adapters/SwapSellPolicy.t.sol new file mode 100644 index 0000000..9acf634 --- /dev/null +++ b/test/unit/adapters/SwapSellPolicy.t.sol @@ -0,0 +1,102 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.28; + +import {YieldSeekerSwapSellPolicy} from "../../../src/adapters/SwapSellPolicy.sol"; +import {AWKErrors} from "../../../src/agentwalletkit/AWKErrors.sol"; +import {Test} from "forge-std/Test.sol"; + +contract SwapSellPolicyTest is Test { + YieldSeekerSwapSellPolicy policy; + + address admin = address(0xA11CE); + address emergencyAdmin = address(0xB0B); + address nonAdmin = address(0xDEAD); + address tokenA = address(0x1001); + address tokenB = address(0x1002); + + function setUp() public { + policy = new YieldSeekerSwapSellPolicy(admin, emergencyAdmin, false); + } + + function test_Constructor_RevertsOnZeroAdmin() public { + vm.expectRevert(abi.encodeWithSelector(AWKErrors.ZeroAddress.selector)); + new YieldSeekerSwapSellPolicy(address(0), emergencyAdmin, false); + } + + function test_Constructor_RevertsOnZeroEmergencyAdmin() public { + vm.expectRevert(abi.encodeWithSelector(AWKErrors.ZeroAddress.selector)); + new YieldSeekerSwapSellPolicy(admin, address(0), false); + } + + function test_AddSellableToken_AdminOnly() public { + vm.prank(nonAdmin); + vm.expectRevert(); + policy.addSellableToken(tokenA); + vm.prank(admin); + policy.addSellableToken(tokenA); + assertTrue(policy.isSellableToken(tokenA)); + } + + function test_AddSellableToken_RevertsOnZeroAddress() public { + vm.prank(admin); + vm.expectRevert(abi.encodeWithSelector(AWKErrors.ZeroAddress.selector)); + policy.addSellableToken(address(0)); + } + + function test_AddSellableTokens_BatchSucceeds() public { + address[] memory tokens = new address[](2); + tokens[0] = tokenA; + tokens[1] = tokenB; + vm.prank(admin); + policy.addSellableTokens(tokens); + assertTrue(policy.isSellableToken(tokenA)); + assertTrue(policy.isSellableToken(tokenB)); + address[] memory listedTokens = policy.getSellableTokens(); + assertEq(listedTokens.length, 2); + } + + function test_AddSellableTokens_RevertsOnZeroAddress() public { + address[] memory tokens = new address[](2); + tokens[0] = tokenA; + tokens[1] = address(0); + vm.prank(admin); + vm.expectRevert(abi.encodeWithSelector(AWKErrors.ZeroAddress.selector)); + policy.addSellableTokens(tokens); + assertFalse(policy.isSellableToken(tokenA)); + } + + function test_RemoveSellableToken_EmergencyOnly() public { + vm.prank(admin); + policy.addSellableToken(tokenA); + vm.prank(nonAdmin); + vm.expectRevert(); + policy.removeSellableToken(tokenA); + vm.prank(emergencyAdmin); + policy.removeSellableToken(tokenA); + assertFalse(policy.isSellableToken(tokenA)); + } + + function test_SetAllowSellingAllTokens_AdminOnly() public { + vm.prank(nonAdmin); + vm.expectRevert(); + policy.setAllowSellingAllTokens(true); + vm.prank(admin); + policy.setAllowSellingAllTokens(true); + assertTrue(policy.allowSellingAllTokens()); + assertTrue(policy.isSellableToken(address(0x9999))); + } + + function test_IsSellableToken_AllowlistAndAllowAllFlow() public { + assertFalse(policy.isSellableToken(tokenA)); + vm.prank(admin); + policy.addSellableToken(tokenA); + assertTrue(policy.isSellableToken(tokenA)); + vm.prank(emergencyAdmin); + policy.removeSellableToken(tokenA); + assertFalse(policy.isSellableToken(tokenA)); + vm.prank(admin); + policy.setAllowSellingAllTokens(true); + assertTrue(policy.isSellableToken(tokenA)); + assertTrue(policy.isSellableToken(address(0xFFFF))); + } +} diff --git a/test/unit/adapters/UniswapV3SwapAdapter.t.sol b/test/unit/adapters/UniswapV3SwapAdapter.t.sol new file mode 100644 index 0000000..3be8c16 --- /dev/null +++ b/test/unit/adapters/UniswapV3SwapAdapter.t.sol @@ -0,0 +1,189 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.28; + +import {YieldSeekerFeeTracker} from "../../../src/FeeTracker.sol"; +import {AssetNotAllowed, BaseAssetNotAllowed} from "../../../src/adapters/Adapter.sol"; +import {SellTokenNotAllowed, YieldSeekerSwapSellPolicy} from "../../../src/adapters/SwapSellPolicy.sol"; +import {YieldSeekerUniswapV3SwapAdapter} from "../../../src/adapters/UniswapV3SwapAdapter.sol"; +import {AWKErrors} from "../../../src/agentwalletkit/AWKErrors.sol"; +import {InsufficientOutput, InvalidRouteEndpoints, InvalidRouteLength, InvalidSwapRoute, InvalidSwapTokenAddress} from "../../../src/agentwalletkit/adapters/AWKSwapAdapter.sol"; +import {AWKUniswapV3SwapAdapter, IUniswapV3SwapRouter, InvalidUniswapV3FeeTier, InvalidUniswapV3RouterTarget} from "../../../src/agentwalletkit/adapters/AWKUniswapV3SwapAdapter.sol"; +import {MockERC20} from "../../mocks/MockERC20.sol"; +import {AdapterWalletHarness} from "./AdapterHarness.t.sol"; +import {Test} from "forge-std/Test.sol"; + +contract MockUniswapV3Router { + uint256 public configuredBuyAmount; + bool public shouldRevert; + + function setBuyAmount(uint256 amount) external { + configuredBuyAmount = amount; + } + + function setRevert(bool value) external { + shouldRevert = value; + } + + function exactInput(IUniswapV3SwapRouter.ExactInputParams calldata params) external payable returns (uint256 amountOut) { + if (shouldRevert) revert("swap failed"); + (address sellToken, address buyToken) = _decodePathEndpoints(params.path); + require(MockERC20(sellToken).transferFrom(msg.sender, address(this), params.amountIn), "TransferFrom failed"); + amountOut = configuredBuyAmount == 0 ? params.amountOutMinimum : configuredBuyAmount; + require(MockERC20(buyToken).transfer(msg.sender, amountOut), "Transfer failed"); + } + + function _decodePathEndpoints(bytes memory path) internal pure returns (address firstToken, address lastToken) { + require(path.length >= 43, "invalid path"); + assembly { + firstToken := shr(96, mload(add(path, 0x20))) + lastToken := shr(96, mload(add(add(path, 0x20), sub(mload(path), 20)))) + } + } +} + +contract UniswapV3SwapAdapterTest is Test { + YieldSeekerUniswapV3SwapAdapter adapter; + YieldSeekerFeeTracker feeTracker; + YieldSeekerSwapSellPolicy sellPolicy; + AdapterWalletHarness wallet; + MockERC20 baseAsset; + MockERC20 sellToken; + MockERC20 otherToken; + MockUniswapV3Router router; + + function _decodeUint(bytes memory data) internal pure returns (uint256) { + return abi.decode(abi.decode(data, (bytes)), (uint256)); + } + + function _buildRoute(address from, address to) internal pure returns (AWKUniswapV3SwapAdapter.SwapRoute memory route) { + route.path = new address[](2); + route.path[0] = from; + route.path[1] = to; + route.fees = new uint24[](1); + route.fees[0] = 3000; + } + + function _executeSwap(address buyToken, AWKUniswapV3SwapAdapter.SwapRoute memory route, uint256 sellAmount, uint256 minBuyAmount) internal returns (bytes memory) { + bytes memory data = abi.encodeWithSelector(adapter.swap.selector, address(sellToken), buyToken, route, sellAmount, minBuyAmount); + return wallet.executeAdapter(address(adapter), address(router), data); + } + + function setUp() public { + baseAsset = new MockERC20("Mock USDC", "mUSDC"); + sellToken = new MockERC20("Mock Token", "mTKN"); + otherToken = new MockERC20("Other Token", "oTKN"); + feeTracker = new YieldSeekerFeeTracker(address(this)); + feeTracker.setFeeConfig(1000, address(0xBEEF)); + sellPolicy = new YieldSeekerSwapSellPolicy(address(this), address(this), false); + sellPolicy.addSellableToken(address(sellToken)); + router = new MockUniswapV3Router(); + adapter = new YieldSeekerUniswapV3SwapAdapter(address(router), address(sellPolicy)); + wallet = new AdapterWalletHarness(baseAsset, feeTracker); + baseAsset.mint(address(router), 1_000_000e6); + otherToken.mint(address(router), 1_000_000e18); + sellToken.mint(address(wallet), 1_000e18); + } + + function test_Execute_Swap_Succeeds() public { + router.setBuyAmount(500e6); + AWKUniswapV3SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + bytes memory result = _executeSwap(address(baseAsset), route, 100e18, 400e6); + uint256 buyAmount = _decodeUint(result); + assertEq(buyAmount, 500e6); + assertEq(sellToken.balanceOf(address(wallet)), 900e18); + assertEq(baseAsset.balanceOf(address(wallet)), 500e6); + } + + function test_Execute_Swap_RevertsOnLowOutput() public { + router.setBuyAmount(100e6); + AWKUniswapV3SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + vm.expectRevert(abi.encodeWithSelector(InsufficientOutput.selector, uint256(100e6), uint256(150e6))); + _executeSwap(address(baseAsset), route, 100e18, 150e6); + } + + function test_Execute_Swap_RevertsOnZeroAmounts() public { + AWKUniswapV3SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + vm.expectRevert(abi.encodeWithSelector(AWKErrors.ZeroAmount.selector)); + _executeSwap(address(baseAsset), route, 0, 0); + } + + function test_Execute_Swap_RevertsOnWrongTarget() public { + AWKUniswapV3SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + bytes memory data = abi.encodeWithSelector(adapter.swap.selector, address(sellToken), address(baseAsset), route, uint256(10e18), uint256(1e6)); + vm.expectRevert(abi.encodeWithSelector(InvalidUniswapV3RouterTarget.selector, address(0x1234), address(router))); + wallet.executeAdapter(address(adapter), address(0x1234), data); + } + + function test_Execute_Swap_RevertsOnInvalidFeeTier() public { + AWKUniswapV3SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + route.fees[0] = 250; + vm.expectRevert(abi.encodeWithSelector(InvalidUniswapV3FeeTier.selector, uint24(250))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnInvalidRouteLength() public { + AWKUniswapV3SwapAdapter.SwapRoute memory route; + route.path = new address[](1); + route.path[0] = address(sellToken); + route.fees = new uint24[](0); + vm.expectRevert(abi.encodeWithSelector(InvalidRouteLength.selector, uint256(1))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnFeePathMismatch() public { + AWKUniswapV3SwapAdapter.SwapRoute memory route; + route.path = new address[](2); + route.path[0] = address(sellToken); + route.path[1] = address(baseAsset); + route.fees = new uint24[](0); + vm.expectRevert(abi.encodeWithSelector(InvalidSwapRoute.selector)); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnRouteSellEndpointMismatch() public { + AWKUniswapV3SwapAdapter.SwapRoute memory route = _buildRoute(address(otherToken), address(baseAsset)); + vm.expectRevert(abi.encodeWithSelector(InvalidRouteEndpoints.selector, address(sellToken), address(baseAsset))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnRouteBuyEndpointMismatch() public { + AWKUniswapV3SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(otherToken)); + vm.expectRevert(abi.encodeWithSelector(InvalidRouteEndpoints.selector, address(sellToken), address(baseAsset))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnZeroPathToken() public { + AWKUniswapV3SwapAdapter.SwapRoute memory route; + route.path = new address[](3); + route.path[0] = address(sellToken); + route.path[1] = address(0); + route.path[2] = address(baseAsset); + route.fees = new uint24[](2); + route.fees[0] = 3000; + route.fees[1] = 3000; + vm.expectRevert(abi.encodeWithSelector(InvalidSwapTokenAddress.selector, address(0))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsOnNonSellableToken() public { + sellPolicy.removeSellableToken(address(sellToken)); + AWKUniswapV3SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(baseAsset)); + vm.expectRevert(abi.encodeWithSelector(SellTokenNotAllowed.selector, address(sellToken))); + _executeSwap(address(baseAsset), route, 100e18, 1e6); + } + + function test_Execute_Swap_RevertsWhenBuyTokenNotBaseAsset() public { + AWKUniswapV3SwapAdapter.SwapRoute memory route = _buildRoute(address(sellToken), address(otherToken)); + vm.expectRevert(abi.encodeWithSelector(AssetNotAllowed.selector)); + _executeSwap(address(otherToken), route, 100e18, 1e18); + } + + function test_Execute_Swap_RevertsWhenSellingBaseAsset() public { + sellPolicy.addSellableToken(address(baseAsset)); + baseAsset.mint(address(wallet), 1_000e6); + AWKUniswapV3SwapAdapter.SwapRoute memory route = _buildRoute(address(baseAsset), address(otherToken)); + bytes memory data = abi.encodeWithSelector(adapter.swap.selector, address(baseAsset), address(otherToken), route, uint256(100e6), uint256(1e18)); + vm.expectRevert(abi.encodeWithSelector(BaseAssetNotAllowed.selector)); + wallet.executeAdapter(address(adapter), address(router), data); + } +} diff --git a/test/unit/adapters/ZeroXAdapter.t.sol b/test/unit/adapters/ZeroXAdapter.t.sol deleted file mode 100644 index 8cd92fb..0000000 --- a/test/unit/adapters/ZeroXAdapter.t.sol +++ /dev/null @@ -1,135 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity 0.8.28; - -import {YieldSeekerFeeTracker} from "../../../src/FeeTracker.sol"; -import {YieldSeekerZeroXAdapter} from "../../../src/adapters/ZeroXAdapter.sol"; -import {AWKErrors} from "../../../src/agentwalletkit/AWKErrors.sol"; -import {InsufficientOutput} from "../../../src/agentwalletkit/adapters/AWKZeroXAdapter.sol"; -import {MockERC20} from "../../mocks/MockERC20.sol"; -import {AdapterWalletHarness} from "./AdapterHarness.t.sol"; -import {Test} from "forge-std/Test.sol"; - -contract MockZeroXTarget { - address internal constant NATIVE_TOKEN = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE; - uint256 public lastValue; - uint256 public configuredBuyAmount; - bool public shouldRevert; - - function setBuyAmount(uint256 amount) external { - configuredBuyAmount = amount; - } - - function setRevert(bool value) external { - shouldRevert = value; - } - - function swap(address sellToken, address buyToken, uint256 sellAmount, uint256 minBuyAmount) external payable { - if (shouldRevert) revert("swap failed"); - lastValue = msg.value; - if (sellToken != NATIVE_TOKEN) { - require(MockERC20(sellToken).transferFrom(msg.sender, address(this), sellAmount), "TransferFrom failed"); - } - uint256 buyAmount = configuredBuyAmount == 0 ? minBuyAmount : configuredBuyAmount; - require(MockERC20(buyToken).transfer(msg.sender, buyAmount), "Transfer failed"); - } -} - -contract ZeroXAdapterTest is Test { - address internal constant NATIVE_TOKEN = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE; - YieldSeekerZeroXAdapter adapter; - YieldSeekerFeeTracker feeTracker; - AdapterWalletHarness wallet; - MockERC20 baseAsset; - MockERC20 sellToken; - MockZeroXTarget target; - - function _decodeUint(bytes memory data) internal pure returns (uint256) { - return abi.decode(abi.decode(data, (bytes)), (uint256)); - } - - function setUp() public { - baseAsset = new MockERC20("Mock USDC", "mUSDC"); - sellToken = new MockERC20("Mock Token", "mTKN"); - feeTracker = new YieldSeekerFeeTracker(address(this)); - feeTracker.setFeeConfig(1000, address(0xBEEF)); - target = new MockZeroXTarget(); - adapter = new YieldSeekerZeroXAdapter(address(target)); - wallet = new AdapterWalletHarness(baseAsset, feeTracker); - baseAsset.mint(address(target), 1_000_000e6); - sellToken.mint(address(wallet), 1_000e18); - } - - function test_Execute_SwapTokens_Succeeds() public { - target.setBuyAmount(500e6); - bytes memory data = abi.encodeWithSelector( - adapter.swap.selector, - address(sellToken), - address(baseAsset), - uint256(100e18), - uint256(400e6), - abi.encodeWithSelector(MockZeroXTarget.swap.selector, address(sellToken), address(baseAsset), uint256(100e18), uint256(400e6)), - uint256(0) - ); - bytes memory result = wallet.executeAdapter(address(adapter), address(target), data); - uint256 buyAmount = _decodeUint(result); - assertEq(buyAmount, 500e6); - assertEq(sellToken.balanceOf(address(wallet)), 900e18); - assertEq(baseAsset.balanceOf(address(wallet)), 500e6); - } - - function test_Execute_Swap_RevertsOnLowOutput() public { - target.setBuyAmount(100e6); - bytes memory data = abi.encodeWithSelector( - adapter.swap.selector, - address(sellToken), - address(baseAsset), - uint256(100e18), - uint256(150e6), - abi.encodeWithSelector(MockZeroXTarget.swap.selector, address(sellToken), address(baseAsset), uint256(100e18), uint256(150e6)), - uint256(0) - ); - vm.expectRevert(abi.encodeWithSelector(InsufficientOutput.selector, uint256(100e6), uint256(150e6))); - wallet.executeAdapter(address(adapter), address(target), data); - } - - function test_Execute_Swap_RevertsOnZeroAmounts() public { - bytes memory data = abi.encodeWithSelector( - adapter.swap.selector, address(sellToken), address(baseAsset), uint256(0), uint256(0), abi.encodeWithSelector(MockZeroXTarget.swap.selector, address(sellToken), address(baseAsset), uint256(0), uint256(0)), uint256(0) - ); - vm.expectRevert(abi.encodeWithSelector(AWKErrors.ZeroAmount.selector)); - wallet.executeAdapter(address(adapter), address(target), data); - } - - function test_Execute_Swap_RevertBubble() public { - target.setRevert(true); - bytes memory data = abi.encodeWithSelector( - adapter.swap.selector, - address(sellToken), - address(baseAsset), - uint256(10e18), - uint256(10e6), - abi.encodeWithSelector(MockZeroXTarget.swap.selector, address(sellToken), address(baseAsset), uint256(10e18), uint256(10e6)), - uint256(0) - ); - vm.expectRevert(); - wallet.executeAdapter(address(adapter), address(target), data); - } - - function test_Execute_Swap_NativeUsesSellAmount() public { - target.setBuyAmount(200e6); - bytes memory data = abi.encodeWithSelector( - adapter.swap.selector, - NATIVE_TOKEN, - address(baseAsset), - uint256(1 ether), - uint256(100e6), - abi.encodeWithSelector(MockZeroXTarget.swap.selector, NATIVE_TOKEN, address(baseAsset), uint256(1 ether), uint256(100e6)), - uint256(10 ether) - ); - vm.deal(address(wallet), 2 ether); - bytes memory result = wallet.executeAdapter(address(adapter), address(target), data); - uint256 buyAmount = _decodeUint(result); - assertEq(buyAmount, 200e6); - assertEq(target.lastValue(), 1 ether); - } -}