{
  "abi": [
    {
      "inputs": [
        {
          "internalType": "contract IBank",
          "name": "_bank",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_werc20",
          "type": "address"
        },
        {
          "internalType": "contract IUniswapV2Router02",
          "name": "_router",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "governor",
          "type": "address"
        }
      ],
      "name": "AcceptGovernor",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "governor",
          "type": "address"
        }
      ],
      "name": "SetGovernor",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "pendingGovernor",
          "type": "address"
        }
      ],
      "name": "SetPendingGovernor",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "acceptGovernor",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "tokenA",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "tokenB",
          "type": "address"
        },
        {
          "components": [
            {
              "internalType": "uint256",
              "name": "amtAUser",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtBUser",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtLPUser",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtABorrow",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtBBorrow",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtLPBorrow",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtAMin",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtBMin",
              "type": "uint256"
            }
          ],
          "internalType": "struct UniswapV2SpellV1.Amounts",
          "name": "amt",
          "type": "tuple"
        }
      ],
      "name": "addLiquidityWERC20",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "tokenA",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "tokenB",
          "type": "address"
        },
        {
          "components": [
            {
              "internalType": "uint256",
              "name": "amtAUser",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtBUser",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtLPUser",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtABorrow",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtBBorrow",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtLPBorrow",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtAMin",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtBMin",
              "type": "uint256"
            }
          ],
          "internalType": "struct UniswapV2SpellV1.Amounts",
          "name": "amt",
          "type": "tuple"
        },
        {
          "internalType": "address",
          "name": "wstaking",
          "type": "address"
        }
      ],
      "name": "addLiquidityWStakingRewards",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "approved",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "bank",
      "outputs": [
        {
          "internalType": "contract IBank",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "factory",
      "outputs": [
        {
          "internalType": "contract IUniswapV2Factory",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "tokenA",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "tokenB",
          "type": "address"
        }
      ],
      "name": "getAndApprovePair",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "governor",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "wstaking",
          "type": "address"
        }
      ],
      "name": "harvestWStakingRewards",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        },
        {
          "internalType": "uint256[]",
          "name": "",
          "type": "uint256[]"
        },
        {
          "internalType": "uint256[]",
          "name": "",
          "type": "uint256[]"
        },
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "name": "onERC1155BatchReceived",
      "outputs": [
        {
          "internalType": "bytes4",
          "name": "",
          "type": "bytes4"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "name": "onERC1155Received",
      "outputs": [
        {
          "internalType": "bytes4",
          "name": "",
          "type": "bytes4"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "pairs",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "pendingGovernor",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "tokenA",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "tokenB",
          "type": "address"
        },
        {
          "components": [
            {
              "internalType": "uint256",
              "name": "amtLPTake",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtLPWithdraw",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtARepay",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtBRepay",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtLPRepay",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtAMin",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtBMin",
              "type": "uint256"
            }
          ],
          "internalType": "struct UniswapV2SpellV1.RepayAmounts",
          "name": "amt",
          "type": "tuple"
        }
      ],
      "name": "removeLiquidityWERC20",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "tokenA",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "tokenB",
          "type": "address"
        },
        {
          "components": [
            {
              "internalType": "uint256",
              "name": "amtLPTake",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtLPWithdraw",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtARepay",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtBRepay",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtLPRepay",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtAMin",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "amtBMin",
              "type": "uint256"
            }
          ],
          "internalType": "struct UniswapV2SpellV1.RepayAmounts",
          "name": "amt",
          "type": "tuple"
        },
        {
          "internalType": "address",
          "name": "wstaking",
          "type": "address"
        }
      ],
      "name": "removeLiquidityWStakingRewards",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "router",
      "outputs": [
        {
          "internalType": "contract IUniswapV2Router02",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_pendingGovernor",
          "type": "address"
        }
      ],
      "name": "setPendingGovernor",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address[]",
          "name": "lpTokens",
          "type": "address[]"
        },
        {
          "internalType": "bool[]",
          "name": "statuses",
          "type": "bool[]"
        }
      ],
      "name": "setWhitelistLPTokens",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes4",
          "name": "interfaceId",
          "type": "bytes4"
        }
      ],
      "name": "supportsInterface",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "werc20",
      "outputs": [
        {
          "internalType": "contract IWERC20",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "weth",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "whitelistedLpTokens",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "stateMutability": "payable",
      "type": "receive"
    }
  ],
  "allSourcePaths": {
    "1": "/Users/sagarbehara/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/introspection/ERC165.sol",
    "10": "/Users/sagarbehara/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/token/ERC1155/IERC1155Receiver.sol",
    "12": "/Users/sagarbehara/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/token/ERC20/IERC20.sol",
    "13": "/Users/sagarbehara/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/token/ERC20/SafeERC20.sol",
    "14": "/Users/sagarbehara/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/utils/Address.sol",
    "17": "contracts/Governable.sol",
    "2": "/Users/sagarbehara/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/introspection/IERC165.sol",
    "4": "/Users/sagarbehara/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/math/SafeMath.sol",
    "41": "contracts/spell/BasicSpell.sol",
    "45": "contracts/spell/UniswapV2SpellV1.sol",
    "46": "contracts/spell/WhitelistSpell.sol",
    "5": "/Users/sagarbehara/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/proxy/Initializable.sol",
    "50": "contracts/utils/ERC1155NaiveReceiver.sol",
    "51": "contracts/utils/HomoraMath.sol",
    "57": "interfaces/IBank.sol",
    "63": "interfaces/IERC20Wrapper.sol",
    "69": "interfaces/IUniswapV2Factory.sol",
    "7": "/Users/sagarbehara/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/token/ERC1155/ERC1155Receiver.sol",
    "70": "interfaces/IUniswapV2Pair.sol",
    "71": "interfaces/IUniswapV2Router01.sol",
    "72": "interfaces/IUniswapV2Router02.sol",
    "73": "interfaces/IWERC20.sol",
    "74": "interfaces/IWETH.sol",
    "77": "interfaces/IWStakingRewards.sol",
    "8": "/Users/sagarbehara/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/token/ERC1155/IERC1155.sol"
  },
  "ast": {
    "absolutePath": "contracts/spell/UniswapV2SpellV1.sol",
    "exportedSymbols": {
      "UniswapV2SpellV1": [
        20794
      ]
    },
    "id": 20795,
    "license": "MIT",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 19444,
        "literals": [
          "solidity",
          "0.6",
          ".12"
        ],
        "nodeType": "PragmaDirective",
        "src": "33:23:45"
      },
      {
        "id": 19445,
        "literals": [
          "experimental",
          "ABIEncoderV2"
        ],
        "nodeType": "PragmaDirective",
        "src": "57:33:45"
      },
      {
        "absolutePath": "/Users/sagarbehara/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/token/ERC20/IERC20.sol",
        "file": "OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/token/ERC20/IERC20.sol",
        "id": 19446,
        "nodeType": "ImportDirective",
        "scope": 20795,
        "sourceUnit": 23925,
        "src": "92:84:45",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "/Users/sagarbehara/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/math/SafeMath.sol",
        "file": "OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/math/SafeMath.sol",
        "id": 19447,
        "nodeType": "ImportDirective",
        "scope": 20795,
        "sourceUnit": 23725,
        "src": "177:79:45",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "contracts/spell/WhitelistSpell.sol",
        "file": "./WhitelistSpell.sol",
        "id": 19448,
        "nodeType": "ImportDirective",
        "scope": 20795,
        "sourceUnit": 20886,
        "src": "258:30:45",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "contracts/utils/HomoraMath.sol",
        "file": "../utils/HomoraMath.sol",
        "id": 19449,
        "nodeType": "ImportDirective",
        "scope": 20795,
        "sourceUnit": 21784,
        "src": "289:33:45",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "interfaces/IUniswapV2Factory.sol",
        "file": "../../interfaces/IUniswapV2Factory.sol",
        "id": 19450,
        "nodeType": "ImportDirective",
        "scope": 20795,
        "sourceUnit": 25793,
        "src": "323:48:45",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "interfaces/IUniswapV2Router02.sol",
        "file": "../../interfaces/IUniswapV2Router02.sol",
        "id": 19451,
        "nodeType": "ImportDirective",
        "scope": 20795,
        "sourceUnit": 26042,
        "src": "372:49:45",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "interfaces/IUniswapV2Pair.sol",
        "file": "../../interfaces/IUniswapV2Pair.sol",
        "id": 19452,
        "nodeType": "ImportDirective",
        "scope": 20795,
        "sourceUnit": 25577,
        "src": "422:45:45",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "interfaces/IWStakingRewards.sol",
        "file": "../../interfaces/IWStakingRewards.sol",
        "id": 19453,
        "nodeType": "ImportDirective",
        "scope": 20795,
        "sourceUnit": 25844,
        "src": "468:47:45",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 19454,
              "name": "WhitelistSpell",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 20885,
              "src": "546:14:45",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_WhitelistSpell_$20885",
                "typeString": "contract WhitelistSpell"
              }
            },
            "id": 19455,
            "nodeType": "InheritanceSpecifier",
            "src": "546:14:45"
          }
        ],
        "contractDependencies": [
          108,
          15704,
          20885,
          21517,
          23296,
          26125,
          27532,
          27920,
          27961
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 20794,
        "linearizedBaseContracts": [
          20794,
          20885,
          108,
          23296,
          15704,
          21517,
          26125,
          27961,
          27920,
          27532
        ],
        "name": "UniswapV2SpellV1",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "id": 19458,
            "libraryName": {
              "contractScope": null,
              "id": 19456,
              "name": "SafeMath",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 23724,
              "src": "571:8:45",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_SafeMath_$23724",
                "typeString": "library SafeMath"
              }
            },
            "nodeType": "UsingForDirective",
            "src": "565:24:45",
            "typeName": {
              "id": 19457,
              "name": "uint",
              "nodeType": "ElementaryTypeName",
              "src": "584:4:45",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            }
          },
          {
            "id": 19461,
            "libraryName": {
              "contractScope": null,
              "id": 19459,
              "name": "HomoraMath",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 21783,
              "src": "598:10:45",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_HomoraMath_$21783",
                "typeString": "library HomoraMath"
              }
            },
            "nodeType": "UsingForDirective",
            "src": "592:26:45",
            "typeName": {
              "id": 19460,
              "name": "uint",
              "nodeType": "ElementaryTypeName",
              "src": "613:4:45",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            }
          },
          {
            "constant": false,
            "functionSelector": "c45a0155",
            "id": 19463,
            "mutability": "immutable",
            "name": "factory",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 20794,
            "src": "622:42:45",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_contract$_IUniswapV2Factory_$25792",
              "typeString": "contract IUniswapV2Factory"
            },
            "typeName": {
              "contractScope": null,
              "id": 19462,
              "name": "IUniswapV2Factory",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 25792,
              "src": "622:17:45",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_IUniswapV2Factory_$25792",
                "typeString": "contract IUniswapV2Factory"
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "functionSelector": "f887ea40",
            "id": 19465,
            "mutability": "immutable",
            "name": "router",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 20794,
            "src": "687:42:45",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
              "typeString": "contract IUniswapV2Router02"
            },
            "typeName": {
              "contractScope": null,
              "id": 19464,
              "name": "IUniswapV2Router02",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 26041,
              "src": "687:18:45",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                "typeString": "contract IUniswapV2Router02"
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "functionSelector": "69454b86",
            "id": 19471,
            "mutability": "mutable",
            "name": "pairs",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 20794,
            "src": "752:60:45",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_address_$_$",
              "typeString": "mapping(address => mapping(address => address))"
            },
            "typeName": {
              "id": 19470,
              "keyType": {
                "id": 19466,
                "name": "address",
                "nodeType": "ElementaryTypeName",
                "src": "760:7:45",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                }
              },
              "nodeType": "Mapping",
              "src": "752:47:45",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_address_$_$",
                "typeString": "mapping(address => mapping(address => address))"
              },
              "valueType": {
                "id": 19469,
                "keyType": {
                  "id": 19467,
                  "name": "address",
                  "nodeType": "ElementaryTypeName",
                  "src": "779:7:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  }
                },
                "nodeType": "Mapping",
                "src": "771:27:45",
                "typeDescriptions": {
                  "typeIdentifier": "t_mapping$_t_address_$_t_address_$",
                  "typeString": "mapping(address => address)"
                },
                "valueType": {
                  "id": 19468,
                  "name": "address",
                  "nodeType": "ElementaryTypeName",
                  "src": "790:7:45",
                  "stateMutability": "nonpayable",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  }
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 19499,
              "nodeType": "Block",
              "src": "1017:79:45",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 19489,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 19487,
                      "name": "router",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19465,
                      "src": "1023:6:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                        "typeString": "contract IUniswapV2Router02"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 19488,
                      "name": "_router",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19477,
                      "src": "1032:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                        "typeString": "contract IUniswapV2Router02"
                      }
                    },
                    "src": "1023:16:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                      "typeString": "contract IUniswapV2Router02"
                    }
                  },
                  "id": 19490,
                  "nodeType": "ExpressionStatement",
                  "src": "1023:16:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 19497,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 19491,
                      "name": "factory",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19463,
                      "src": "1045:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_contract$_IUniswapV2Factory_$25792",
                        "typeString": "contract IUniswapV2Factory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "arguments": [
                        {
                          "argumentTypes": null,
                          "arguments": [],
                          "expression": {
                            "argumentTypes": [],
                            "expression": {
                              "argumentTypes": null,
                              "id": 19493,
                              "name": "_router",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19477,
                              "src": "1073:7:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                                "typeString": "contract IUniswapV2Router02"
                              }
                            },
                            "id": 19494,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "factory",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 27562,
                            "src": "1073:15:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_pure$__$returns$_t_address_$",
                              "typeString": "function () pure external returns (address)"
                            }
                          },
                          "id": 19495,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "1073:17:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        ],
                        "id": 19492,
                        "name": "IUniswapV2Factory",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 25792,
                        "src": "1055:17:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_contract$_IUniswapV2Factory_$25792_$",
                          "typeString": "type(contract IUniswapV2Factory)"
                        }
                      },
                      "id": 19496,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "typeConversion",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "1055:36:45",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_contract$_IUniswapV2Factory_$25792",
                        "typeString": "contract IUniswapV2Factory"
                      }
                    },
                    "src": "1045:46:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_IUniswapV2Factory_$25792",
                      "typeString": "contract IUniswapV2Factory"
                    }
                  },
                  "id": 19498,
                  "nodeType": "ExpressionStatement",
                  "src": "1045:46:45"
                }
              ]
            },
            "documentation": null,
            "id": 19500,
            "implemented": true,
            "kind": "constructor",
            "modifiers": [
              {
                "arguments": [
                  {
                    "argumentTypes": null,
                    "id": 19480,
                    "name": "_bank",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 19473,
                    "src": "985:5:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_IBank_$24391",
                      "typeString": "contract IBank"
                    }
                  },
                  {
                    "argumentTypes": null,
                    "id": 19481,
                    "name": "_werc20",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 19475,
                    "src": "992:7:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 19482,
                        "name": "_router",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19477,
                        "src": "1001:7:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                          "typeString": "contract IUniswapV2Router02"
                        }
                      },
                      "id": 19483,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "WETH",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 27567,
                      "src": "1001:12:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_pure$__$returns$_t_address_$",
                        "typeString": "function () pure external returns (address)"
                      }
                    },
                    "id": 19484,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1001:14:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  }
                ],
                "id": 19485,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 19479,
                  "name": "WhitelistSpell",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 20885,
                  "src": "970:14:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_type$_t_contract$_WhitelistSpell_$20885_$",
                    "typeString": "type(contract WhitelistSpell)"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "970:46:45"
              }
            ],
            "name": "",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 19478,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19473,
                  "mutability": "mutable",
                  "name": "_bank",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19500,
                  "src": "894:11:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_IBank_$24391",
                    "typeString": "contract IBank"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 19472,
                    "name": "IBank",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 24391,
                    "src": "894:5:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_IBank_$24391",
                      "typeString": "contract IBank"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19475,
                  "mutability": "mutable",
                  "name": "_werc20",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19500,
                  "src": "911:15:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19474,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "911:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19477,
                  "mutability": "mutable",
                  "name": "_router",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19500,
                  "src": "932:26:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                    "typeString": "contract IUniswapV2Router02"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 19476,
                    "name": "IUniswapV2Router02",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 26041,
                    "src": "932:18:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                      "typeString": "contract IUniswapV2Router02"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "888:74:45"
            },
            "returnParameters": {
              "id": 19486,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1017:0:45"
            },
            "scope": 20794,
            "src": "877:219:45",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 19586,
              "nodeType": "Block",
              "src": "1345:388:45",
              "statements": [
                {
                  "assignments": [
                    19511
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19511,
                      "mutability": "mutable",
                      "name": "lp",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 19586,
                      "src": "1351:10:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 19510,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "1351:7:45",
                        "stateMutability": "nonpayable",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19517,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "baseExpression": {
                        "argumentTypes": null,
                        "id": 19512,
                        "name": "pairs",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19471,
                        "src": "1364:5:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_address_$_$",
                          "typeString": "mapping(address => mapping(address => address))"
                        }
                      },
                      "id": 19514,
                      "indexExpression": {
                        "argumentTypes": null,
                        "id": 19513,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19503,
                        "src": "1370:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "1364:13:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_address_$_t_address_$",
                        "typeString": "mapping(address => address)"
                      }
                    },
                    "id": 19516,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 19515,
                      "name": "tokenB",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19505,
                      "src": "1378:6:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "1364:21:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "1351:34:45"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    },
                    "id": 19523,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "id": 19518,
                      "name": "lp",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19511,
                      "src": "1395:2:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "argumentTypes": null,
                      "arguments": [
                        {
                          "argumentTypes": null,
                          "hexValue": "30",
                          "id": 19521,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "1409:1:45",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          },
                          "value": "0"
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          }
                        ],
                        "id": 19520,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "ElementaryTypeNameExpression",
                        "src": "1401:7:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_address_$",
                          "typeString": "type(address)"
                        },
                        "typeName": {
                          "id": 19519,
                          "name": "address",
                          "nodeType": "ElementaryTypeName",
                          "src": "1401:7:45",
                          "typeDescriptions": {
                            "typeIdentifier": null,
                            "typeString": null
                          }
                        }
                      },
                      "id": 19522,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "typeConversion",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "1401:10:45",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_address_payable",
                        "typeString": "address payable"
                      }
                    },
                    "src": "1395:16:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 19583,
                  "nodeType": "IfStatement",
                  "src": "1391:323:45",
                  "trueBody": {
                    "id": 19582,
                    "nodeType": "Block",
                    "src": "1413:301:45",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 19530,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 19524,
                            "name": "lp",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19511,
                            "src": "1421:2:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 19527,
                                "name": "tokenA",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19503,
                                "src": "1442:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 19528,
                                "name": "tokenB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19505,
                                "src": "1450:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                },
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "id": 19525,
                                "name": "factory",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19463,
                                "src": "1426:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_IUniswapV2Factory_$25792",
                                  "typeString": "contract IUniswapV2Factory"
                                }
                              },
                              "id": 19526,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "getPair",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 25760,
                              "src": "1426:15:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_address_$",
                                "typeString": "function (address,address) view external returns (address)"
                              }
                            },
                            "id": 19529,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "1426:31:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "src": "1421:36:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "id": 19531,
                        "nodeType": "ExpressionStatement",
                        "src": "1421:36:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              },
                              "id": 19538,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "id": 19533,
                                "name": "lp",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19511,
                                "src": "1473:2:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "!=",
                              "rightExpression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "hexValue": "30",
                                    "id": 19536,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "1487:1:45",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    },
                                    "value": "0"
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    }
                                  ],
                                  "id": 19535,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "1479:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_address_$",
                                    "typeString": "type(address)"
                                  },
                                  "typeName": {
                                    "id": 19534,
                                    "name": "address",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "1479:7:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": null,
                                      "typeString": null
                                    }
                                  }
                                },
                                "id": 19537,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "1479:10:45",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address_payable",
                                  "typeString": "address payable"
                                }
                              },
                              "src": "1473:16:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "hexValue": "6e6f206c7020746f6b656e",
                              "id": 19539,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "1491:13:45",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_6c1151469c7384c95e286501c7ffc8829d4bfb240f5c41815f1bf4b2ec1f5495",
                                "typeString": "literal_string \"no lp token\""
                              },
                              "value": "no lp token"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              {
                                "typeIdentifier": "t_stringliteral_6c1151469c7384c95e286501c7ffc8829d4bfb240f5c41815f1bf4b2ec1f5495",
                                "typeString": "literal_string \"no lp token\""
                              }
                            ],
                            "id": 19532,
                            "name": "require",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              -18,
                              -18
                            ],
                            "referencedDeclaration": -18,
                            "src": "1465:7:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (bool,string memory) pure"
                            }
                          },
                          "id": 19540,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "1465:40:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 19541,
                        "nodeType": "ExpressionStatement",
                        "src": "1465:40:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 19543,
                              "name": "tokenA",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19503,
                              "src": "1527:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 19546,
                                  "name": "router",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 19465,
                                  "src": "1543:6:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                                    "typeString": "contract IUniswapV2Router02"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                                    "typeString": "contract IUniswapV2Router02"
                                  }
                                ],
                                "id": 19545,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "1535:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_address_$",
                                  "typeString": "type(address)"
                                },
                                "typeName": {
                                  "id": 19544,
                                  "name": "address",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "1535:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": null,
                                    "typeString": null
                                  }
                                }
                              },
                              "id": 19547,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "1535:15:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              },
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            ],
                            "id": 19542,
                            "name": "ensureApprove",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 15423,
                            "src": "1513:13:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$",
                              "typeString": "function (address,address)"
                            }
                          },
                          "id": 19548,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "1513:38:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 19549,
                        "nodeType": "ExpressionStatement",
                        "src": "1513:38:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 19551,
                              "name": "tokenB",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19505,
                              "src": "1573:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 19554,
                                  "name": "router",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 19465,
                                  "src": "1589:6:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                                    "typeString": "contract IUniswapV2Router02"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                                    "typeString": "contract IUniswapV2Router02"
                                  }
                                ],
                                "id": 19553,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "1581:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_address_$",
                                  "typeString": "type(address)"
                                },
                                "typeName": {
                                  "id": 19552,
                                  "name": "address",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "1581:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": null,
                                    "typeString": null
                                  }
                                }
                              },
                              "id": 19555,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "1581:15:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              },
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            ],
                            "id": 19550,
                            "name": "ensureApprove",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 15423,
                            "src": "1559:13:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$",
                              "typeString": "function (address,address)"
                            }
                          },
                          "id": 19556,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "1559:38:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 19557,
                        "nodeType": "ExpressionStatement",
                        "src": "1559:38:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 19559,
                              "name": "lp",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19511,
                              "src": "1619:2:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 19562,
                                  "name": "router",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 19465,
                                  "src": "1631:6:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                                    "typeString": "contract IUniswapV2Router02"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                                    "typeString": "contract IUniswapV2Router02"
                                  }
                                ],
                                "id": 19561,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "1623:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_address_$",
                                  "typeString": "type(address)"
                                },
                                "typeName": {
                                  "id": 19560,
                                  "name": "address",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "1623:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": null,
                                    "typeString": null
                                  }
                                }
                              },
                              "id": 19563,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "1623:15:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              },
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            ],
                            "id": 19558,
                            "name": "ensureApprove",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 15423,
                            "src": "1605:13:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$",
                              "typeString": "function (address,address)"
                            }
                          },
                          "id": 19564,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "1605:34:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 19565,
                        "nodeType": "ExpressionStatement",
                        "src": "1605:34:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 19572,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "id": 19566,
                                "name": "pairs",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19471,
                                "src": "1647:5:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_address_$_$",
                                  "typeString": "mapping(address => mapping(address => address))"
                                }
                              },
                              "id": 19569,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 19567,
                                "name": "tokenA",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19503,
                                "src": "1653:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "1647:13:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_address_$_t_address_$",
                                "typeString": "mapping(address => address)"
                              }
                            },
                            "id": 19570,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 19568,
                              "name": "tokenB",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19505,
                              "src": "1661:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "1647:21:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 19571,
                            "name": "lp",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19511,
                            "src": "1671:2:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "src": "1647:26:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "id": 19573,
                        "nodeType": "ExpressionStatement",
                        "src": "1647:26:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 19580,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "id": 19574,
                                "name": "pairs",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19471,
                                "src": "1681:5:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_address_$_$",
                                  "typeString": "mapping(address => mapping(address => address))"
                                }
                              },
                              "id": 19577,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 19575,
                                "name": "tokenB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19505,
                                "src": "1687:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "1681:13:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_address_$_t_address_$",
                                "typeString": "mapping(address => address)"
                              }
                            },
                            "id": 19578,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 19576,
                              "name": "tokenA",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19503,
                              "src": "1695:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "1681:21:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 19579,
                            "name": "lp",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19511,
                            "src": "1705:2:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "src": "1681:26:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "id": 19581,
                        "nodeType": "ExpressionStatement",
                        "src": "1681:26:45"
                      }
                    ]
                  }
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 19584,
                    "name": "lp",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 19511,
                    "src": "1726:2:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "functionReturnParameters": 19509,
                  "id": 19585,
                  "nodeType": "Return",
                  "src": "1719:9:45"
                }
              ]
            },
            "documentation": {
              "id": 19501,
              "nodeType": "StructuredDocumentation",
              "src": "1100:158:45",
              "text": "@dev Return the LP token for the token pairs (can be in any order)\n @param tokenA Token A to get LP token\n @param tokenB Token B to get LP token"
            },
            "functionSelector": "2185059f",
            "id": 19587,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "getAndApprovePair",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 19506,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19503,
                  "mutability": "mutable",
                  "name": "tokenA",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19587,
                  "src": "1288:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19502,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1288:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19505,
                  "mutability": "mutable",
                  "name": "tokenB",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19587,
                  "src": "1304:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19504,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1304:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1287:32:45"
            },
            "returnParameters": {
              "id": 19509,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19508,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19587,
                  "src": "1336:7:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19507,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1336:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1335:9:45"
            },
            "scope": 20794,
            "src": "1261:472:45",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 19641,
              "nodeType": "Block",
              "src": "2125:235:45",
              "statements": [
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 19611,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "arguments": [
                        {
                          "argumentTypes": null,
                          "id": 19605,
                          "name": "resB",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 19596,
                          "src": "2144:4:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        ],
                        "expression": {
                          "argumentTypes": null,
                          "id": 19603,
                          "name": "amtA",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 19590,
                          "src": "2135:4:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 19604,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "mul",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 23607,
                        "src": "2135:8:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                          "typeString": "function (uint256,uint256) pure returns (uint256)"
                        }
                      },
                      "id": 19606,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "2135:14:45",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">=",
                    "rightExpression": {
                      "argumentTypes": null,
                      "arguments": [
                        {
                          "argumentTypes": null,
                          "id": 19609,
                          "name": "resA",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 19594,
                          "src": "2162:4:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        ],
                        "expression": {
                          "argumentTypes": null,
                          "id": 19607,
                          "name": "amtB",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 19592,
                          "src": "2153:4:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 19608,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "mul",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 23607,
                        "src": "2153:8:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                          "typeString": "function (uint256,uint256) pure returns (uint256)"
                        }
                      },
                      "id": 19610,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "2153:14:45",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "2135:32:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 19639,
                    "nodeType": "Block",
                    "src": "2266:90:45",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 19633,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 19626,
                            "name": "swapAmt",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19599,
                            "src": "2274:7:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 19628,
                                "name": "amtB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19592,
                                "src": "2301:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 19629,
                                "name": "amtA",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19590,
                                "src": "2307:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 19630,
                                "name": "resB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19596,
                                "src": "2313:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 19631,
                                "name": "resA",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19594,
                                "src": "2319:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "id": 19627,
                              "name": "_optimalDepositA",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19756,
                              "src": "2284:16:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$",
                                "typeString": "function (uint256,uint256,uint256,uint256) pure returns (uint256)"
                              }
                            },
                            "id": 19632,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "2284:40:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "2274:50:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 19634,
                        "nodeType": "ExpressionStatement",
                        "src": "2274:50:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 19637,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 19635,
                            "name": "isReversed",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19601,
                            "src": "2332:10:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "74727565",
                            "id": 19636,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "bool",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "2345:4:45",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "value": "true"
                          },
                          "src": "2332:17:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 19638,
                        "nodeType": "ExpressionStatement",
                        "src": "2332:17:45"
                      }
                    ]
                  },
                  "id": 19640,
                  "nodeType": "IfStatement",
                  "src": "2131:225:45",
                  "trueBody": {
                    "id": 19625,
                    "nodeType": "Block",
                    "src": "2169:91:45",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 19619,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 19612,
                            "name": "swapAmt",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19599,
                            "src": "2177:7:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 19614,
                                "name": "amtA",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19590,
                                "src": "2204:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 19615,
                                "name": "amtB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19592,
                                "src": "2210:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 19616,
                                "name": "resA",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19594,
                                "src": "2216:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 19617,
                                "name": "resB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19596,
                                "src": "2222:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "id": 19613,
                              "name": "_optimalDepositA",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19756,
                              "src": "2187:16:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$",
                                "typeString": "function (uint256,uint256,uint256,uint256) pure returns (uint256)"
                              }
                            },
                            "id": 19618,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "2187:40:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "2177:50:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 19620,
                        "nodeType": "ExpressionStatement",
                        "src": "2177:50:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 19623,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 19621,
                            "name": "isReversed",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19601,
                            "src": "2235:10:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "66616c7365",
                            "id": 19622,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "bool",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "2248:5:45",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "value": "false"
                          },
                          "src": "2235:18:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 19624,
                        "nodeType": "ExpressionStatement",
                        "src": "2235:18:45"
                      }
                    ]
                  }
                }
              ]
            },
            "documentation": {
              "id": 19588,
              "nodeType": "StructuredDocumentation",
              "src": "1737:243:45",
              "text": "@dev Compute optimal deposit amount\n @param amtA amount of token A desired to deposit\n @param amtB amount of token B desired to deposit\n @param resA amount of token A in reserve\n @param resB amount of token B in reserve"
            },
            "id": 19642,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "optimalDeposit",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 19597,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19590,
                  "mutability": "mutable",
                  "name": "amtA",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19642,
                  "src": "2012:9:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19589,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2012:4:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19592,
                  "mutability": "mutable",
                  "name": "amtB",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19642,
                  "src": "2027:9:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19591,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2027:4:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19594,
                  "mutability": "mutable",
                  "name": "resA",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19642,
                  "src": "2042:9:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19593,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2042:4:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19596,
                  "mutability": "mutable",
                  "name": "resB",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19642,
                  "src": "2057:9:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19595,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2057:4:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2006:64:45"
            },
            "returnParameters": {
              "id": 19602,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19599,
                  "mutability": "mutable",
                  "name": "swapAmt",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19642,
                  "src": "2094:12:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19598,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2094:4:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19601,
                  "mutability": "mutable",
                  "name": "isReversed",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19642,
                  "src": "2108:15:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 19600,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "2108:4:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2093:31:45"
            },
            "scope": 20794,
            "src": "1983:377:45",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "internal"
          },
          {
            "body": {
              "id": 19755,
              "nodeType": "Block",
              "src": "2787:406:45",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 19665,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 19659,
                              "name": "resB",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19651,
                              "src": "2810:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "id": 19657,
                              "name": "amtA",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19645,
                              "src": "2801:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "id": 19658,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "mul",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 23607,
                            "src": "2801:8:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                              "typeString": "function (uint256,uint256) pure returns (uint256)"
                            }
                          },
                          "id": 19660,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "2801:14:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": ">=",
                        "rightExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 19663,
                              "name": "resA",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19649,
                              "src": "2828:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "id": 19661,
                              "name": "amtB",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19647,
                              "src": "2819:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "id": 19662,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "mul",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 23607,
                            "src": "2819:8:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                              "typeString": "function (uint256,uint256) pure returns (uint256)"
                            }
                          },
                          "id": 19664,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "2819:14:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "2801:32:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5265766572736564",
                        "id": 19666,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "2835:10:45",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_ae550d2aef13556bbd59e653f8f1587c67039de6b3f08dcf11ed55f61e34b1aa",
                          "typeString": "literal_string \"Reversed\""
                        },
                        "value": "Reversed"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_ae550d2aef13556bbd59e653f8f1587c67039de6b3f08dcf11ed55f61e34b1aa",
                          "typeString": "literal_string \"Reversed\""
                        }
                      ],
                      "id": 19656,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        -18,
                        -18
                      ],
                      "referencedDeclaration": -18,
                      "src": "2793:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 19667,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2793:53:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 19668,
                  "nodeType": "ExpressionStatement",
                  "src": "2793:53:45"
                },
                {
                  "assignments": [
                    19670
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19670,
                      "mutability": "mutable",
                      "name": "a",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 19755,
                      "src": "2852:6:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 19669,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "2852:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19672,
                  "initialValue": {
                    "argumentTypes": null,
                    "hexValue": "393937",
                    "id": 19671,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": true,
                    "kind": "number",
                    "lValueRequested": false,
                    "nodeType": "Literal",
                    "src": "2861:3:45",
                    "subdenomination": null,
                    "typeDescriptions": {
                      "typeIdentifier": "t_rational_997_by_1",
                      "typeString": "int_const 997"
                    },
                    "value": "997"
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "2852:12:45"
                },
                {
                  "assignments": [
                    19674
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19674,
                      "mutability": "mutable",
                      "name": "b",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 19755,
                      "src": "2870:6:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 19673,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "2870:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19682,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 19680,
                        "name": "resA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19649,
                        "src": "2894:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "hexValue": "31393937",
                            "id": 19677,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "2884:4:45",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_1997_by_1",
                              "typeString": "int_const 1997"
                            },
                            "value": "1997"
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_rational_1997_by_1",
                              "typeString": "int_const 1997"
                            }
                          ],
                          "id": 19676,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "2879:4:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint256_$",
                            "typeString": "type(uint256)"
                          },
                          "typeName": {
                            "id": 19675,
                            "name": "uint",
                            "nodeType": "ElementaryTypeName",
                            "src": "2879:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": null,
                              "typeString": null
                            }
                          }
                        },
                        "id": 19678,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "2879:10:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 19679,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "mul",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23607,
                      "src": "2879:14:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                        "typeString": "function (uint256,uint256) pure returns (uint256)"
                      }
                    },
                    "id": 19681,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2879:20:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "2870:29:45"
                },
                {
                  "assignments": [
                    19684
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19684,
                      "mutability": "mutable",
                      "name": "_c",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 19755,
                      "src": "2905:7:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 19683,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "2905:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19696,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 19693,
                            "name": "resA",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19649,
                            "src": "2945:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "expression": {
                            "argumentTypes": null,
                            "id": 19691,
                            "name": "amtB",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19647,
                            "src": "2936:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "id": 19692,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "mul",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 23607,
                          "src": "2936:8:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                            "typeString": "function (uint256,uint256) pure returns (uint256)"
                          }
                        },
                        "id": 19694,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "2936:14:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "components": [
                          {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 19687,
                                "name": "resB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19651,
                                "src": "2925:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "id": 19685,
                                "name": "amtA",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19645,
                                "src": "2916:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 19686,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "mul",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 23607,
                              "src": "2916:8:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                                "typeString": "function (uint256,uint256) pure returns (uint256)"
                              }
                            },
                            "id": 19688,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "2916:14:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "id": 19689,
                        "isConstant": false,
                        "isInlineArray": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "TupleExpression",
                        "src": "2915:16:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 19690,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "sub",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23573,
                      "src": "2915:20:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                        "typeString": "function (uint256,uint256) pure returns (uint256)"
                      }
                    },
                    "id": 19695,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2915:36:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "2905:46:45"
                },
                {
                  "assignments": [
                    19698
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19698,
                      "mutability": "mutable",
                      "name": "c",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 19755,
                      "src": "2957:6:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 19697,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "2957:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19712,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 19710,
                        "name": "resA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19649,
                        "src": "3003:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 19706,
                                "name": "resB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19651,
                                "src": "2992:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "id": 19704,
                                "name": "amtB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19647,
                                "src": "2983:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 19705,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "add",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 23551,
                              "src": "2983:8:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                                "typeString": "function (uint256,uint256) pure returns (uint256)"
                              }
                            },
                            "id": 19707,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "2983:14:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "expression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "hexValue": "31303030",
                                "id": 19701,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "2973:4:45",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_1000_by_1",
                                  "typeString": "int_const 1000"
                                },
                                "value": "1000"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_1000_by_1",
                                  "typeString": "int_const 1000"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "id": 19699,
                                "name": "_c",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19684,
                                "src": "2966:2:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 19700,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "mul",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 23607,
                              "src": "2966:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                                "typeString": "function (uint256,uint256) pure returns (uint256)"
                              }
                            },
                            "id": 19702,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "2966:12:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "id": 19703,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "div",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 23629,
                          "src": "2966:16:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                            "typeString": "function (uint256,uint256) pure returns (uint256)"
                          }
                        },
                        "id": 19708,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "2966:32:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 19709,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "mul",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23607,
                      "src": "2966:36:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                        "typeString": "function (uint256,uint256) pure returns (uint256)"
                      }
                    },
                    "id": 19711,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2966:42:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "2957:51:45"
                },
                {
                  "assignments": [
                    19714
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19714,
                      "mutability": "mutable",
                      "name": "d",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 19755,
                      "src": "3014:6:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 19713,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "3014:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19722,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "hexValue": "34",
                        "id": 19720,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "3036:1:45",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_4_by_1",
                          "typeString": "int_const 4"
                        },
                        "value": "4"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_rational_4_by_1",
                          "typeString": "int_const 4"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 19717,
                            "name": "c",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19698,
                            "src": "3029:1:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "expression": {
                            "argumentTypes": null,
                            "id": 19715,
                            "name": "a",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19670,
                            "src": "3023:1:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "id": 19716,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "mul",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 23607,
                          "src": "3023:5:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                            "typeString": "function (uint256,uint256) pure returns (uint256)"
                          }
                        },
                        "id": 19718,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "3023:8:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 19719,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "mul",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23607,
                      "src": "3023:12:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                        "typeString": "function (uint256,uint256) pure returns (uint256)"
                      }
                    },
                    "id": 19721,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3023:15:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "3014:24:45"
                },
                {
                  "assignments": [
                    19724
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19724,
                      "mutability": "mutable",
                      "name": "e",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 19755,
                      "src": "3044:6:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 19723,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "3044:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19735,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 19732,
                            "name": "d",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19714,
                            "src": "3082:1:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "expression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 19729,
                                "name": "b",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19674,
                                "src": "3075:1:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "id": 19727,
                                "name": "b",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19674,
                                "src": "3069:1:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 19728,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "mul",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 23607,
                              "src": "3069:5:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                                "typeString": "function (uint256,uint256) pure returns (uint256)"
                              }
                            },
                            "id": 19730,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "3069:8:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "id": 19731,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "add",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 23551,
                          "src": "3069:12:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                            "typeString": "function (uint256,uint256) pure returns (uint256)"
                          }
                        },
                        "id": 19733,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "3069:15:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 19725,
                        "name": "HomoraMath",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 21783,
                        "src": "3053:10:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_contract$_HomoraMath_$21783_$",
                          "typeString": "type(library HomoraMath)"
                        }
                      },
                      "id": 19726,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "sqrt",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 21782,
                      "src": "3053:15:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$",
                        "typeString": "function (uint256) pure returns (uint256)"
                      }
                    },
                    "id": 19734,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3053:32:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "3044:41:45"
                },
                {
                  "assignments": [
                    19737
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19737,
                      "mutability": "mutable",
                      "name": "numerator",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 19755,
                      "src": "3091:14:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 19736,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "3091:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19742,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 19740,
                        "name": "b",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19674,
                        "src": "3114:1:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 19738,
                        "name": "e",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19724,
                        "src": "3108:1:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 19739,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "sub",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23573,
                      "src": "3108:5:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                        "typeString": "function (uint256,uint256) pure returns (uint256)"
                      }
                    },
                    "id": 19741,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3108:8:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "3091:25:45"
                },
                {
                  "assignments": [
                    19744
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19744,
                      "mutability": "mutable",
                      "name": "denominator",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 19755,
                      "src": "3122:16:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 19743,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "3122:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19749,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "hexValue": "32",
                        "id": 19747,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "3147:1:45",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_2_by_1",
                          "typeString": "int_const 2"
                        },
                        "value": "2"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_rational_2_by_1",
                          "typeString": "int_const 2"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 19745,
                        "name": "a",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19670,
                        "src": "3141:1:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 19746,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "mul",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23607,
                      "src": "3141:5:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                        "typeString": "function (uint256,uint256) pure returns (uint256)"
                      }
                    },
                    "id": 19748,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3141:8:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "3122:27:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 19752,
                        "name": "denominator",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19744,
                        "src": "3176:11:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 19750,
                        "name": "numerator",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19737,
                        "src": "3162:9:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 19751,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "div",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23629,
                      "src": "3162:13:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                        "typeString": "function (uint256,uint256) pure returns (uint256)"
                      }
                    },
                    "id": 19753,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3162:26:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 19655,
                  "id": 19754,
                  "nodeType": "Return",
                  "src": "3155:33:45"
                }
              ]
            },
            "documentation": {
              "id": 19643,
              "nodeType": "StructuredDocumentation",
              "src": "2364:301:45",
              "text": "@dev Compute optimal deposit amount helper.\n @param amtA amount of token A desired to deposit\n @param amtB amount of token B desired to deposit\n @param resA amount of token A in reserve\n @param resB amount of token B in reserve\n Formula: https://blog.alphafinance.io/byot/"
            },
            "id": 19756,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "_optimalDepositA",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 19652,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19645,
                  "mutability": "mutable",
                  "name": "amtA",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19756,
                  "src": "2699:9:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19644,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2699:4:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19647,
                  "mutability": "mutable",
                  "name": "amtB",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19756,
                  "src": "2714:9:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19646,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2714:4:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19649,
                  "mutability": "mutable",
                  "name": "resA",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19756,
                  "src": "2729:9:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19648,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2729:4:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19651,
                  "mutability": "mutable",
                  "name": "resB",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19756,
                  "src": "2744:9:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19650,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2744:4:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2693:64:45"
            },
            "returnParameters": {
              "id": 19655,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19654,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19756,
                  "src": "2781:4:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19653,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2781:4:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2780:6:45"
            },
            "scope": 20794,
            "src": "2668:525:45",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "internal"
          },
          {
            "canonicalName": "UniswapV2SpellV1.Amounts",
            "id": 19773,
            "members": [
              {
                "constant": false,
                "id": 19758,
                "mutability": "mutable",
                "name": "amtAUser",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 19773,
                "src": "3218:13:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 19757,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "3218:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 19760,
                "mutability": "mutable",
                "name": "amtBUser",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 19773,
                "src": "3263:13:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 19759,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "3263:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 19762,
                "mutability": "mutable",
                "name": "amtLPUser",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 19773,
                "src": "3308:14:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 19761,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "3308:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 19764,
                "mutability": "mutable",
                "name": "amtABorrow",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 19773,
                "src": "3356:15:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 19763,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "3356:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 19766,
                "mutability": "mutable",
                "name": "amtBBorrow",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 19773,
                "src": "3401:15:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 19765,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "3401:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 19768,
                "mutability": "mutable",
                "name": "amtLPBorrow",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 19773,
                "src": "3446:16:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 19767,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "3446:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 19770,
                "mutability": "mutable",
                "name": "amtAMin",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 19773,
                "src": "3494:12:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 19769,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "3494:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 19772,
                "mutability": "mutable",
                "name": "amtBMin",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 19773,
                "src": "3556:12:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 19771,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "3556:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              }
            ],
            "name": "Amounts",
            "nodeType": "StructDefinition",
            "scope": 20794,
            "src": "3197:420:45",
            "visibility": "public"
          },
          {
            "body": {
              "id": 20008,
              "nodeType": "Block",
              "src": "3932:1526:45",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 19786,
                          "name": "whitelistedLpTokens",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20806,
                          "src": "3946:19:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
                            "typeString": "mapping(address => bool)"
                          }
                        },
                        "id": 19788,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 19787,
                          "name": "lp",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 19782,
                          "src": "3966:2:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3946:23:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "6c7020746f6b656e206e6f742077686974656c6973746564",
                        "id": 19789,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "3971:26:45",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_76fd3bc08be88f328f09320fa313b292032a5afbcfc99b8a4713537b5c013f5e",
                          "typeString": "literal_string \"lp token not whitelisted\""
                        },
                        "value": "lp token not whitelisted"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_76fd3bc08be88f328f09320fa313b292032a5afbcfc99b8a4713537b5c013f5e",
                          "typeString": "literal_string \"lp token not whitelisted\""
                        }
                      ],
                      "id": 19785,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        -18,
                        -18
                      ],
                      "referencedDeclaration": -18,
                      "src": "3938:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 19790,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3938:60:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 19791,
                  "nodeType": "ExpressionStatement",
                  "src": "3938:60:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "id": 19792,
                      "name": "doTransmitETH",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15443,
                      "src": "4038:13:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
                        "typeString": "function ()"
                      }
                    },
                    "id": 19793,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4038:15:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 19794,
                  "nodeType": "ExpressionStatement",
                  "src": "4038:15:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 19796,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19776,
                        "src": "4070:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 19797,
                          "name": "amt",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 19780,
                          "src": "4078:3:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                            "typeString": "struct UniswapV2SpellV1.Amounts calldata"
                          }
                        },
                        "id": 19798,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "amtAUser",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 19758,
                        "src": "4078:12:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 19795,
                      "name": "doTransmit",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15464,
                      "src": "4059:10:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 19799,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4059:32:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 19800,
                  "nodeType": "ExpressionStatement",
                  "src": "4059:32:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 19802,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19778,
                        "src": "4108:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 19803,
                          "name": "amt",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 19780,
                          "src": "4116:3:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                            "typeString": "struct UniswapV2SpellV1.Amounts calldata"
                          }
                        },
                        "id": 19804,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "amtBUser",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 19760,
                        "src": "4116:12:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 19801,
                      "name": "doTransmit",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15464,
                      "src": "4097:10:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 19805,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4097:32:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 19806,
                  "nodeType": "ExpressionStatement",
                  "src": "4097:32:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 19808,
                        "name": "lp",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19782,
                        "src": "4146:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 19809,
                          "name": "amt",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 19780,
                          "src": "4150:3:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                            "typeString": "struct UniswapV2SpellV1.Amounts calldata"
                          }
                        },
                        "id": 19810,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "amtLPUser",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 19762,
                        "src": "4150:13:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 19807,
                      "name": "doTransmit",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15464,
                      "src": "4135:10:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 19811,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4135:29:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 19812,
                  "nodeType": "ExpressionStatement",
                  "src": "4135:29:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 19814,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19776,
                        "src": "4215:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 19815,
                          "name": "amt",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 19780,
                          "src": "4223:3:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                            "typeString": "struct UniswapV2SpellV1.Amounts calldata"
                          }
                        },
                        "id": 19816,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "amtABorrow",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 19764,
                        "src": "4223:14:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 19813,
                      "name": "doBorrow",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15567,
                      "src": "4206:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 19817,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4206:32:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 19818,
                  "nodeType": "ExpressionStatement",
                  "src": "4206:32:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 19820,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19778,
                        "src": "4253:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 19821,
                          "name": "amt",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 19780,
                          "src": "4261:3:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                            "typeString": "struct UniswapV2SpellV1.Amounts calldata"
                          }
                        },
                        "id": 19822,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "amtBBorrow",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 19766,
                        "src": "4261:14:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 19819,
                      "name": "doBorrow",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15567,
                      "src": "4244:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 19823,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4244:32:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 19824,
                  "nodeType": "ExpressionStatement",
                  "src": "4244:32:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 19826,
                        "name": "lp",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19782,
                        "src": "4291:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 19827,
                          "name": "amt",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 19780,
                          "src": "4295:3:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                            "typeString": "struct UniswapV2SpellV1.Amounts calldata"
                          }
                        },
                        "id": 19828,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "amtLPBorrow",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 19768,
                        "src": "4295:15:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 19825,
                      "name": "doBorrow",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15567,
                      "src": "4282:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 19829,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4282:29:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 19830,
                  "nodeType": "ExpressionStatement",
                  "src": "4282:29:45"
                },
                {
                  "assignments": [
                    19832
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19832,
                      "mutability": "mutable",
                      "name": "swapAmt",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20008,
                      "src": "4358:12:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 19831,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "4358:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19833,
                  "initialValue": null,
                  "nodeType": "VariableDeclarationStatement",
                  "src": "4358:12:45"
                },
                {
                  "assignments": [
                    19835
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19835,
                      "mutability": "mutable",
                      "name": "isReversed",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20008,
                      "src": "4376:15:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      },
                      "typeName": {
                        "id": 19834,
                        "name": "bool",
                        "nodeType": "ElementaryTypeName",
                        "src": "4376:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19836,
                  "initialValue": null,
                  "nodeType": "VariableDeclarationStatement",
                  "src": "4376:15:45"
                },
                {
                  "id": 19908,
                  "nodeType": "Block",
                  "src": "4397:421:45",
                  "statements": [
                    {
                      "assignments": [
                        19838
                      ],
                      "declarations": [
                        {
                          "constant": false,
                          "id": 19838,
                          "mutability": "mutable",
                          "name": "amtA",
                          "nodeType": "VariableDeclaration",
                          "overrides": null,
                          "scope": 19908,
                          "src": "4405:9:45",
                          "stateVariable": false,
                          "storageLocation": "default",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "typeName": {
                            "id": 19837,
                            "name": "uint",
                            "nodeType": "ElementaryTypeName",
                            "src": "4405:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "value": null,
                          "visibility": "internal"
                        }
                      ],
                      "id": 19848,
                      "initialValue": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 19845,
                                "name": "this",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": -28,
                                "src": "4450:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                  "typeString": "contract UniswapV2SpellV1"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                  "typeString": "contract UniswapV2SpellV1"
                                }
                              ],
                              "id": 19844,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "4442:7:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_address_$",
                                "typeString": "type(address)"
                              },
                              "typeName": {
                                "id": 19843,
                                "name": "address",
                                "nodeType": "ElementaryTypeName",
                                "src": "4442:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": null,
                                  "typeString": null
                                }
                              }
                            },
                            "id": 19846,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "4442:13:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_address_payable",
                              "typeString": "address payable"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address_payable",
                              "typeString": "address payable"
                            }
                          ],
                          "expression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 19840,
                                "name": "tokenA",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19776,
                                "src": "4424:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "id": 19839,
                              "name": "IERC20",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 23924,
                              "src": "4417:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_IERC20_$23924_$",
                                "typeString": "type(contract IERC20)"
                              }
                            },
                            "id": 19841,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "4417:14:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_IERC20_$23924",
                              "typeString": "contract IERC20"
                            }
                          },
                          "id": 19842,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "balanceOf",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 23863,
                          "src": "4417:24:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                            "typeString": "function (address) view external returns (uint256)"
                          }
                        },
                        "id": 19847,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "4417:39:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "VariableDeclarationStatement",
                      "src": "4405:51:45"
                    },
                    {
                      "assignments": [
                        19850
                      ],
                      "declarations": [
                        {
                          "constant": false,
                          "id": 19850,
                          "mutability": "mutable",
                          "name": "amtB",
                          "nodeType": "VariableDeclaration",
                          "overrides": null,
                          "scope": 19908,
                          "src": "4464:9:45",
                          "stateVariable": false,
                          "storageLocation": "default",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "typeName": {
                            "id": 19849,
                            "name": "uint",
                            "nodeType": "ElementaryTypeName",
                            "src": "4464:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "value": null,
                          "visibility": "internal"
                        }
                      ],
                      "id": 19860,
                      "initialValue": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 19857,
                                "name": "this",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": -28,
                                "src": "4509:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                  "typeString": "contract UniswapV2SpellV1"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                  "typeString": "contract UniswapV2SpellV1"
                                }
                              ],
                              "id": 19856,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "4501:7:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_address_$",
                                "typeString": "type(address)"
                              },
                              "typeName": {
                                "id": 19855,
                                "name": "address",
                                "nodeType": "ElementaryTypeName",
                                "src": "4501:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": null,
                                  "typeString": null
                                }
                              }
                            },
                            "id": 19858,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "4501:13:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_address_payable",
                              "typeString": "address payable"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address_payable",
                              "typeString": "address payable"
                            }
                          ],
                          "expression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 19852,
                                "name": "tokenB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19778,
                                "src": "4483:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "id": 19851,
                              "name": "IERC20",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 23924,
                              "src": "4476:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_IERC20_$23924_$",
                                "typeString": "type(contract IERC20)"
                              }
                            },
                            "id": 19853,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "4476:14:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_IERC20_$23924",
                              "typeString": "contract IERC20"
                            }
                          },
                          "id": 19854,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "balanceOf",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 23863,
                          "src": "4476:24:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                            "typeString": "function (address) view external returns (uint256)"
                          }
                        },
                        "id": 19859,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "4476:39:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "VariableDeclarationStatement",
                      "src": "4464:51:45"
                    },
                    {
                      "assignments": [
                        19862
                      ],
                      "declarations": [
                        {
                          "constant": false,
                          "id": 19862,
                          "mutability": "mutable",
                          "name": "resA",
                          "nodeType": "VariableDeclaration",
                          "overrides": null,
                          "scope": 19908,
                          "src": "4523:9:45",
                          "stateVariable": false,
                          "storageLocation": "default",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "typeName": {
                            "id": 19861,
                            "name": "uint",
                            "nodeType": "ElementaryTypeName",
                            "src": "4523:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "value": null,
                          "visibility": "internal"
                        }
                      ],
                      "id": 19863,
                      "initialValue": null,
                      "nodeType": "VariableDeclarationStatement",
                      "src": "4523:9:45"
                    },
                    {
                      "assignments": [
                        19865
                      ],
                      "declarations": [
                        {
                          "constant": false,
                          "id": 19865,
                          "mutability": "mutable",
                          "name": "resB",
                          "nodeType": "VariableDeclaration",
                          "overrides": null,
                          "scope": 19908,
                          "src": "4540:9:45",
                          "stateVariable": false,
                          "storageLocation": "default",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "typeName": {
                            "id": 19864,
                            "name": "uint",
                            "nodeType": "ElementaryTypeName",
                            "src": "4540:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "value": null,
                          "visibility": "internal"
                        }
                      ],
                      "id": 19866,
                      "initialValue": null,
                      "nodeType": "VariableDeclarationStatement",
                      "src": "4540:9:45"
                    },
                    {
                      "condition": {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 19873,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "arguments": [],
                          "expression": {
                            "argumentTypes": [],
                            "expression": {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 19868,
                                  "name": "lp",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 19782,
                                  "src": "4576:2:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                ],
                                "id": 19867,
                                "name": "IUniswapV2Pair",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 25576,
                                "src": "4561:14:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_IUniswapV2Pair_$25576_$",
                                  "typeString": "type(contract IUniswapV2Pair)"
                                }
                              },
                              "id": 19869,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "4561:18:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IUniswapV2Pair_$25576",
                                "typeString": "contract IUniswapV2Pair"
                              }
                            },
                            "id": 19870,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "token0",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 25504,
                            "src": "4561:25:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
                              "typeString": "function () view external returns (address)"
                            }
                          },
                          "id": 19871,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4561:27:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "argumentTypes": null,
                          "id": 19872,
                          "name": "tokenA",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 19776,
                          "src": "4592:6:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "4561:37:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      "falseBody": {
                        "id": 19895,
                        "nodeType": "Block",
                        "src": "4674:68:45",
                        "statements": [
                          {
                            "expression": {
                              "argumentTypes": null,
                              "id": 19893,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftHandSide": {
                                "argumentTypes": null,
                                "components": [
                                  {
                                    "argumentTypes": null,
                                    "id": 19885,
                                    "name": "resB",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 19865,
                                    "src": "4685:4:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  {
                                    "argumentTypes": null,
                                    "id": 19886,
                                    "name": "resA",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 19862,
                                    "src": "4691:4:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  null
                                ],
                                "id": 19887,
                                "isConstant": false,
                                "isInlineArray": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "nodeType": "TupleExpression",
                                "src": "4684:14:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$__$",
                                  "typeString": "tuple(uint256,uint256,)"
                                }
                              },
                              "nodeType": "Assignment",
                              "operator": "=",
                              "rightHandSide": {
                                "argumentTypes": null,
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "expression": {
                                    "argumentTypes": null,
                                    "arguments": [
                                      {
                                        "argumentTypes": null,
                                        "id": 19889,
                                        "name": "lp",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 19782,
                                        "src": "4716:2:45",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        }
                                      ],
                                      "id": 19888,
                                      "name": "IUniswapV2Pair",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 25576,
                                      "src": "4701:14:45",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_contract$_IUniswapV2Pair_$25576_$",
                                        "typeString": "type(contract IUniswapV2Pair)"
                                      }
                                    },
                                    "id": 19890,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "4701:18:45",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_contract$_IUniswapV2Pair_$25576",
                                      "typeString": "contract IUniswapV2Pair"
                                    }
                                  },
                                  "id": 19891,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "getReserves",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 25518,
                                  "src": "4701:30:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_external_view$__$returns$_t_uint112_$_t_uint112_$_t_uint32_$",
                                    "typeString": "function () view external returns (uint112,uint112,uint32)"
                                  }
                                },
                                "id": 19892,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "4701:32:45",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_tuple$_t_uint112_$_t_uint112_$_t_uint32_$",
                                  "typeString": "tuple(uint112,uint112,uint32)"
                                }
                              },
                              "src": "4684:49:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_tuple$__$",
                                "typeString": "tuple()"
                              }
                            },
                            "id": 19894,
                            "nodeType": "ExpressionStatement",
                            "src": "4684:49:45"
                          }
                        ]
                      },
                      "id": 19896,
                      "nodeType": "IfStatement",
                      "src": "4557:185:45",
                      "trueBody": {
                        "id": 19884,
                        "nodeType": "Block",
                        "src": "4600:68:45",
                        "statements": [
                          {
                            "expression": {
                              "argumentTypes": null,
                              "id": 19882,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftHandSide": {
                                "argumentTypes": null,
                                "components": [
                                  {
                                    "argumentTypes": null,
                                    "id": 19874,
                                    "name": "resA",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 19862,
                                    "src": "4611:4:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  {
                                    "argumentTypes": null,
                                    "id": 19875,
                                    "name": "resB",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 19865,
                                    "src": "4617:4:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  null
                                ],
                                "id": 19876,
                                "isConstant": false,
                                "isInlineArray": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "nodeType": "TupleExpression",
                                "src": "4610:14:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$__$",
                                  "typeString": "tuple(uint256,uint256,)"
                                }
                              },
                              "nodeType": "Assignment",
                              "operator": "=",
                              "rightHandSide": {
                                "argumentTypes": null,
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "expression": {
                                    "argumentTypes": null,
                                    "arguments": [
                                      {
                                        "argumentTypes": null,
                                        "id": 19878,
                                        "name": "lp",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 19782,
                                        "src": "4642:2:45",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        }
                                      ],
                                      "id": 19877,
                                      "name": "IUniswapV2Pair",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 25576,
                                      "src": "4627:14:45",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_contract$_IUniswapV2Pair_$25576_$",
                                        "typeString": "type(contract IUniswapV2Pair)"
                                      }
                                    },
                                    "id": 19879,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "4627:18:45",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_contract$_IUniswapV2Pair_$25576",
                                      "typeString": "contract IUniswapV2Pair"
                                    }
                                  },
                                  "id": 19880,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "getReserves",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 25518,
                                  "src": "4627:30:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_external_view$__$returns$_t_uint112_$_t_uint112_$_t_uint32_$",
                                    "typeString": "function () view external returns (uint112,uint112,uint32)"
                                  }
                                },
                                "id": 19881,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "4627:32:45",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_tuple$_t_uint112_$_t_uint112_$_t_uint32_$",
                                  "typeString": "tuple(uint112,uint112,uint32)"
                                }
                              },
                              "src": "4610:49:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_tuple$__$",
                                "typeString": "tuple()"
                              }
                            },
                            "id": 19883,
                            "nodeType": "ExpressionStatement",
                            "src": "4610:49:45"
                          }
                        ]
                      }
                    },
                    {
                      "expression": {
                        "argumentTypes": null,
                        "id": 19906,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftHandSide": {
                          "argumentTypes": null,
                          "components": [
                            {
                              "argumentTypes": null,
                              "id": 19897,
                              "name": "swapAmt",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19832,
                              "src": "4750:7:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "id": 19898,
                              "name": "isReversed",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19835,
                              "src": "4759:10:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            }
                          ],
                          "id": 19899,
                          "isConstant": false,
                          "isInlineArray": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": true,
                          "nodeType": "TupleExpression",
                          "src": "4749:21:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$_t_uint256_$_t_bool_$",
                            "typeString": "tuple(uint256,bool)"
                          }
                        },
                        "nodeType": "Assignment",
                        "operator": "=",
                        "rightHandSide": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 19901,
                              "name": "amtA",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19838,
                              "src": "4788:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "id": 19902,
                              "name": "amtB",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19850,
                              "src": "4794:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "id": 19903,
                              "name": "resA",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19862,
                              "src": "4800:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "id": 19904,
                              "name": "resB",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19865,
                              "src": "4806:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "id": 19900,
                            "name": "optimalDeposit",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19642,
                            "src": "4773:14:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$_t_bool_$",
                              "typeString": "function (uint256,uint256,uint256,uint256) pure returns (uint256,bool)"
                            }
                          },
                          "id": 19905,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4773:38:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$_t_uint256_$_t_bool_$",
                            "typeString": "tuple(uint256,bool)"
                          }
                        },
                        "src": "4749:62:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_tuple$__$",
                          "typeString": "tuple()"
                        }
                      },
                      "id": 19907,
                      "nodeType": "ExpressionStatement",
                      "src": "4749:62:45"
                    }
                  ]
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 19911,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "id": 19909,
                      "name": "swapAmt",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19832,
                      "src": "4858:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "argumentTypes": null,
                      "hexValue": "30",
                      "id": 19910,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "4868:1:45",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "4858:11:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 19955,
                  "nodeType": "IfStatement",
                  "src": "4854:238:45",
                  "trueBody": {
                    "id": 19954,
                    "nodeType": "Block",
                    "src": "4871:221:45",
                    "statements": [
                      {
                        "assignments": [
                          19916
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 19916,
                            "mutability": "mutable",
                            "name": "path",
                            "nodeType": "VariableDeclaration",
                            "overrides": null,
                            "scope": 19954,
                            "src": "4879:21:45",
                            "stateVariable": false,
                            "storageLocation": "memory",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                              "typeString": "address[]"
                            },
                            "typeName": {
                              "baseType": {
                                "id": 19914,
                                "name": "address",
                                "nodeType": "ElementaryTypeName",
                                "src": "4879:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "id": 19915,
                              "length": null,
                              "nodeType": "ArrayTypeName",
                              "src": "4879:9:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                                "typeString": "address[]"
                              }
                            },
                            "value": null,
                            "visibility": "internal"
                          }
                        ],
                        "id": 19922,
                        "initialValue": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "hexValue": "32",
                              "id": 19920,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "4917:1:45",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_2_by_1",
                                "typeString": "int_const 2"
                              },
                              "value": "2"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_rational_2_by_1",
                                "typeString": "int_const 2"
                              }
                            ],
                            "id": 19919,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "NewExpression",
                            "src": "4903:13:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$",
                              "typeString": "function (uint256) pure returns (address[] memory)"
                            },
                            "typeName": {
                              "baseType": {
                                "id": 19917,
                                "name": "address",
                                "nodeType": "ElementaryTypeName",
                                "src": "4907:7:45",
                                "stateMutability": "nonpayable",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "id": 19918,
                              "length": null,
                              "nodeType": "ArrayTypeName",
                              "src": "4907:9:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                                "typeString": "address[]"
                              }
                            }
                          },
                          "id": 19921,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4903:16:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                            "typeString": "address[] memory"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "4879:40:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 19938,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "components": [
                              {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "id": 19923,
                                  "name": "path",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 19916,
                                  "src": "4928:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                    "typeString": "address[] memory"
                                  }
                                },
                                "id": 19925,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "hexValue": "30",
                                  "id": 19924,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "4933:1:45",
                                  "subdenomination": null,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "nodeType": "IndexAccess",
                                "src": "4928:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "id": 19926,
                                  "name": "path",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 19916,
                                  "src": "4937:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                    "typeString": "address[] memory"
                                  }
                                },
                                "id": 19928,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "hexValue": "31",
                                  "id": 19927,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "4942:1:45",
                                  "subdenomination": null,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_1_by_1",
                                    "typeString": "int_const 1"
                                  },
                                  "value": "1"
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "nodeType": "IndexAccess",
                                "src": "4937:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "id": 19929,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "TupleExpression",
                            "src": "4927:18:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_address_$_t_address_$",
                              "typeString": "tuple(address,address)"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "condition": {
                              "argumentTypes": null,
                              "id": 19930,
                              "name": "isReversed",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19835,
                              "src": "4948:10:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "falseExpression": {
                              "argumentTypes": null,
                              "components": [
                                {
                                  "argumentTypes": null,
                                  "id": 19934,
                                  "name": "tokenA",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 19776,
                                  "src": "4981:6:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                },
                                {
                                  "argumentTypes": null,
                                  "id": 19935,
                                  "name": "tokenB",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 19778,
                                  "src": "4989:6:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                }
                              ],
                              "id": 19936,
                              "isConstant": false,
                              "isInlineArray": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "TupleExpression",
                              "src": "4980:16:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_tuple$_t_address_$_t_address_$",
                                "typeString": "tuple(address,address)"
                              }
                            },
                            "id": 19937,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "Conditional",
                            "src": "4948:48:45",
                            "trueExpression": {
                              "argumentTypes": null,
                              "components": [
                                {
                                  "argumentTypes": null,
                                  "id": 19931,
                                  "name": "tokenB",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 19778,
                                  "src": "4962:6:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                },
                                {
                                  "argumentTypes": null,
                                  "id": 19932,
                                  "name": "tokenA",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 19776,
                                  "src": "4970:6:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                }
                              ],
                              "id": 19933,
                              "isConstant": false,
                              "isInlineArray": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "TupleExpression",
                              "src": "4961:16:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_tuple$_t_address_$_t_address_$",
                                "typeString": "tuple(address,address)"
                              }
                            },
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_address_$_t_address_$",
                              "typeString": "tuple(address,address)"
                            }
                          },
                          "src": "4927:69:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 19939,
                        "nodeType": "ExpressionStatement",
                        "src": "4927:69:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 19943,
                              "name": "swapAmt",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19832,
                              "src": "5036:7:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 19944,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "5045:1:45",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            },
                            {
                              "argumentTypes": null,
                              "id": 19945,
                              "name": "path",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19916,
                              "src": "5048:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                "typeString": "address[] memory"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 19948,
                                  "name": "this",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": -28,
                                  "src": "5062:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                    "typeString": "contract UniswapV2SpellV1"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                    "typeString": "contract UniswapV2SpellV1"
                                  }
                                ],
                                "id": 19947,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "5054:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_address_$",
                                  "typeString": "type(address)"
                                },
                                "typeName": {
                                  "id": 19946,
                                  "name": "address",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "5054:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": null,
                                    "typeString": null
                                  }
                                }
                              },
                              "id": 19949,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "5054:13:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_address_payable",
                                "typeString": "address payable"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 19950,
                                "name": "block",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": -4,
                                "src": "5069:5:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_magic_block",
                                  "typeString": "block"
                                }
                              },
                              "id": 19951,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "timestamp",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": null,
                              "src": "5069:15:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              {
                                "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                "typeString": "address[] memory"
                              },
                              {
                                "typeIdentifier": "t_address_payable",
                                "typeString": "address payable"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "id": 19940,
                              "name": "router",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19465,
                              "src": "5004:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                                "typeString": "contract IUniswapV2Router02"
                              }
                            },
                            "id": 19942,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "swapExactTokensForTokens",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 27726,
                            "src": "5004:31:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$_t_address_$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$",
                              "typeString": "function (uint256,uint256,address[] memory,address,uint256) external returns (uint256[] memory)"
                            }
                          },
                          "id": 19952,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "5004:81:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                            "typeString": "uint256[] memory"
                          }
                        },
                        "id": 19953,
                        "nodeType": "ExpressionStatement",
                        "src": "5004:81:45"
                      }
                    ]
                  }
                },
                {
                  "assignments": [
                    19957
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19957,
                      "mutability": "mutable",
                      "name": "balA",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20008,
                      "src": "5122:9:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 19956,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "5122:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19967,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 19964,
                            "name": "this",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": -28,
                            "src": "5167:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                              "typeString": "contract UniswapV2SpellV1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                              "typeString": "contract UniswapV2SpellV1"
                            }
                          ],
                          "id": 19963,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "5159:7:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_address_$",
                            "typeString": "type(address)"
                          },
                          "typeName": {
                            "id": 19962,
                            "name": "address",
                            "nodeType": "ElementaryTypeName",
                            "src": "5159:7:45",
                            "typeDescriptions": {
                              "typeIdentifier": null,
                              "typeString": null
                            }
                          }
                        },
                        "id": 19965,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "5159:13:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 19959,
                            "name": "tokenA",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19776,
                            "src": "5141:6:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 19958,
                          "name": "IERC20",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 23924,
                          "src": "5134:6:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_IERC20_$23924_$",
                            "typeString": "type(contract IERC20)"
                          }
                        },
                        "id": 19960,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "5134:14:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IERC20_$23924",
                          "typeString": "contract IERC20"
                        }
                      },
                      "id": 19961,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "balanceOf",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23863,
                      "src": "5134:24:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                        "typeString": "function (address) view external returns (uint256)"
                      }
                    },
                    "id": 19966,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "5134:39:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "5122:51:45"
                },
                {
                  "assignments": [
                    19969
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 19969,
                      "mutability": "mutable",
                      "name": "balB",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20008,
                      "src": "5179:9:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 19968,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "5179:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 19979,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 19976,
                            "name": "this",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": -28,
                            "src": "5224:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                              "typeString": "contract UniswapV2SpellV1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                              "typeString": "contract UniswapV2SpellV1"
                            }
                          ],
                          "id": 19975,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "5216:7:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_address_$",
                            "typeString": "type(address)"
                          },
                          "typeName": {
                            "id": 19974,
                            "name": "address",
                            "nodeType": "ElementaryTypeName",
                            "src": "5216:7:45",
                            "typeDescriptions": {
                              "typeIdentifier": null,
                              "typeString": null
                            }
                          }
                        },
                        "id": 19977,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "5216:13:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 19971,
                            "name": "tokenB",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 19778,
                            "src": "5198:6:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 19970,
                          "name": "IERC20",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 23924,
                          "src": "5191:6:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_IERC20_$23924_$",
                            "typeString": "type(contract IERC20)"
                          }
                        },
                        "id": 19972,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "5191:14:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IERC20_$23924",
                          "typeString": "contract IERC20"
                        }
                      },
                      "id": 19973,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "balanceOf",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23863,
                      "src": "5191:24:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                        "typeString": "function (address) view external returns (uint256)"
                      }
                    },
                    "id": 19978,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "5191:39:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "5179:51:45"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    },
                    "id": 19986,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 19982,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "id": 19980,
                        "name": "balA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19957,
                        "src": "5240:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": ">",
                      "rightExpression": {
                        "argumentTypes": null,
                        "hexValue": "30",
                        "id": 19981,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "5247:1:45",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_0_by_1",
                          "typeString": "int_const 0"
                        },
                        "value": "0"
                      },
                      "src": "5240:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "||",
                    "rightExpression": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 19985,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "id": 19983,
                        "name": "balB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 19969,
                        "src": "5252:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": ">",
                      "rightExpression": {
                        "argumentTypes": null,
                        "hexValue": "30",
                        "id": 19984,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "5259:1:45",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_0_by_1",
                          "typeString": "int_const 0"
                        },
                        "value": "0"
                      },
                      "src": "5252:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "src": "5240:20:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 20007,
                  "nodeType": "IfStatement",
                  "src": "5236:218:45",
                  "trueBody": {
                    "id": 20006,
                    "nodeType": "Block",
                    "src": "5262:192:45",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 19990,
                              "name": "tokenA",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19776,
                              "src": "5299:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "id": 19991,
                              "name": "tokenB",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19778,
                              "src": "5315:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "id": 19992,
                              "name": "balA",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19957,
                              "src": "5331:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "id": 19993,
                              "name": "balB",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19969,
                              "src": "5345:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 19994,
                                "name": "amt",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19780,
                                "src": "5359:3:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                                  "typeString": "struct UniswapV2SpellV1.Amounts calldata"
                                }
                              },
                              "id": 19995,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "amtAMin",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 19770,
                              "src": "5359:11:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 19996,
                                "name": "amt",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19780,
                                "src": "5380:3:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                                  "typeString": "struct UniswapV2SpellV1.Amounts calldata"
                                }
                              },
                              "id": 19997,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "amtBMin",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 19772,
                              "src": "5380:11:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20000,
                                  "name": "this",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": -28,
                                  "src": "5409:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                    "typeString": "contract UniswapV2SpellV1"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                    "typeString": "contract UniswapV2SpellV1"
                                  }
                                ],
                                "id": 19999,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "5401:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_address_$",
                                  "typeString": "type(address)"
                                },
                                "typeName": {
                                  "id": 19998,
                                  "name": "address",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "5401:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": null,
                                    "typeString": null
                                  }
                                }
                              },
                              "id": 20001,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "5401:13:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_address_payable",
                                "typeString": "address payable"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 20002,
                                "name": "block",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": -4,
                                "src": "5424:5:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_magic_block",
                                  "typeString": "block"
                                }
                              },
                              "id": 20003,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "timestamp",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": null,
                              "src": "5424:15:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              },
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_address_payable",
                                "typeString": "address payable"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "id": 19987,
                              "name": "router",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19465,
                              "src": "5270:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                                "typeString": "contract IUniswapV2Router02"
                              }
                            },
                            "id": 19989,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "addLiquidity",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 27592,
                            "src": "5270:19:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_address_$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$",
                              "typeString": "function (address,address,uint256,uint256,uint256,uint256,address,uint256) external returns (uint256,uint256,uint256)"
                            }
                          },
                          "id": 20004,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "5270:177:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$",
                            "typeString": "tuple(uint256,uint256,uint256)"
                          }
                        },
                        "id": 20005,
                        "nodeType": "ExpressionStatement",
                        "src": "5270:177:45"
                      }
                    ]
                  }
                }
              ]
            },
            "documentation": {
              "id": 19774,
              "nodeType": "StructuredDocumentation",
              "src": "3621:183:45",
              "text": "@dev Add liquidity to Uniswap pool\n @param tokenA Token A for the pair\n @param tokenB Token B for the pair\n @param amt Amounts of tokens to supply, borrow, and get."
            },
            "id": 20009,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "addLiquidityInternal",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 19783,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19776,
                  "mutability": "mutable",
                  "name": "tokenA",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20009,
                  "src": "3842:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19775,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "3842:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19778,
                  "mutability": "mutable",
                  "name": "tokenB",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20009,
                  "src": "3862:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19777,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "3862:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19780,
                  "mutability": "mutable",
                  "name": "amt",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20009,
                  "src": "3882:20:45",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                    "typeString": "struct UniswapV2SpellV1.Amounts"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 19779,
                    "name": "Amounts",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 19773,
                    "src": "3882:7:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Amounts_$19773_storage_ptr",
                      "typeString": "struct UniswapV2SpellV1.Amounts"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19782,
                  "mutability": "mutable",
                  "name": "lp",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20009,
                  "src": "3908:10:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19781,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "3908:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3836:86:45"
            },
            "returnParameters": {
              "id": 19784,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3932:0:45"
            },
            "scope": 20794,
            "src": "3807:1651:45",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "internal"
          },
          {
            "body": {
              "id": 20057,
              "nodeType": "Block",
              "src": "5809:322:45",
              "statements": [
                {
                  "assignments": [
                    20020
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20020,
                      "mutability": "mutable",
                      "name": "lp",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20057,
                      "src": "5815:10:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 20019,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "5815:7:45",
                        "stateMutability": "nonpayable",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20025,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20022,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20012,
                        "src": "5846:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20023,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20014,
                        "src": "5854:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20021,
                      "name": "getAndApprovePair",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19587,
                      "src": "5828:17:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$_t_address_$",
                        "typeString": "function (address,address) returns (address)"
                      }
                    },
                    "id": 20024,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "5828:33:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "5815:46:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20027,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20012,
                        "src": "5914:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20028,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20014,
                        "src": "5922:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20029,
                        "name": "amt",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20016,
                        "src": "5930:3:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                          "typeString": "struct UniswapV2SpellV1.Amounts calldata"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20030,
                        "name": "lp",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20020,
                        "src": "5935:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                          "typeString": "struct UniswapV2SpellV1.Amounts calldata"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20026,
                      "name": "addLiquidityInternal",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20009,
                      "src": "5893:20:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_Amounts_$19773_calldata_ptr_$_t_address_$returns$__$",
                        "typeString": "function (address,address,struct UniswapV2SpellV1.Amounts calldata,address)"
                      }
                    },
                    "id": 20031,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "5893:45:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20032,
                  "nodeType": "ExpressionStatement",
                  "src": "5893:45:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20034,
                        "name": "lp",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20020,
                        "src": "5986:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 20041,
                                "name": "this",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": -28,
                                "src": "6019:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                  "typeString": "contract UniswapV2SpellV1"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                  "typeString": "contract UniswapV2SpellV1"
                                }
                              ],
                              "id": 20040,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "6011:7:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_address_$",
                                "typeString": "type(address)"
                              },
                              "typeName": {
                                "id": 20039,
                                "name": "address",
                                "nodeType": "ElementaryTypeName",
                                "src": "6011:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": null,
                                  "typeString": null
                                }
                              }
                            },
                            "id": 20042,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "6011:13:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_address_payable",
                              "typeString": "address payable"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address_payable",
                              "typeString": "address payable"
                            }
                          ],
                          "expression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 20036,
                                "name": "lp",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20020,
                                "src": "5997:2:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "id": 20035,
                              "name": "IERC20",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 23924,
                              "src": "5990:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_IERC20_$23924_$",
                                "typeString": "type(contract IERC20)"
                              }
                            },
                            "id": 20037,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "5990:10:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_IERC20_$23924",
                              "typeString": "contract IERC20"
                            }
                          },
                          "id": 20038,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "balanceOf",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 23863,
                          "src": "5990:20:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                            "typeString": "function (address) view external returns (uint256)"
                          }
                        },
                        "id": 20043,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "5990:35:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 20033,
                      "name": "doPutCollateral",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15639,
                      "src": "5970:15:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 20044,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "5970:56:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20045,
                  "nodeType": "ExpressionStatement",
                  "src": "5970:56:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "id": 20046,
                      "name": "doRefundETH",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15546,
                      "src": "6069:11:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
                        "typeString": "function ()"
                      }
                    },
                    "id": 20047,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "6069:13:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20048,
                  "nodeType": "ExpressionStatement",
                  "src": "6069:13:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20050,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20012,
                        "src": "6097:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20049,
                      "name": "doRefund",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15498,
                      "src": "6088:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
                        "typeString": "function (address)"
                      }
                    },
                    "id": 20051,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "6088:16:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20052,
                  "nodeType": "ExpressionStatement",
                  "src": "6088:16:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20054,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20014,
                        "src": "6119:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20053,
                      "name": "doRefund",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15498,
                      "src": "6110:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
                        "typeString": "function (address)"
                      }
                    },
                    "id": 20055,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "6110:16:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20056,
                  "nodeType": "ExpressionStatement",
                  "src": "6110:16:45"
                }
              ]
            },
            "documentation": {
              "id": 20010,
              "nodeType": "StructuredDocumentation",
              "src": "5462:229:45",
              "text": "@dev Add liquidity to Uniswap pool, with no staking rewards (use WERC20 wrapper)\n @param tokenA Token A for the pair\n @param tokenB Token B for the pair\n @param amt Amounts of tokens to supply, borrow, and get."
            },
            "functionSelector": "cc9b1880",
            "id": 20058,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "addLiquidityWERC20",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 20017,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 20012,
                  "mutability": "mutable",
                  "name": "tokenA",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20058,
                  "src": "5727:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20011,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "5727:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20014,
                  "mutability": "mutable",
                  "name": "tokenB",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20058,
                  "src": "5747:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20013,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "5747:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20016,
                  "mutability": "mutable",
                  "name": "amt",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20058,
                  "src": "5767:20:45",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                    "typeString": "struct UniswapV2SpellV1.Amounts"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 20015,
                    "name": "Amounts",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 19773,
                    "src": "5767:7:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Amounts_$19773_storage_ptr",
                      "typeString": "struct UniswapV2SpellV1.Amounts"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "5721:70:45"
            },
            "returnParameters": {
              "id": 20018,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "5809:0:45"
            },
            "scope": 20794,
            "src": "5694:437:45",
            "stateMutability": "payable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": {
              "id": 20221,
              "nodeType": "Block",
              "src": "6543:1170:45",
              "statements": [
                {
                  "assignments": [
                    20071
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20071,
                      "mutability": "mutable",
                      "name": "lp",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20221,
                      "src": "6549:10:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 20070,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "6549:7:45",
                        "stateMutability": "nonpayable",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20076,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20073,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20061,
                        "src": "6580:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20074,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20063,
                        "src": "6588:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20072,
                      "name": "getAndApprovePair",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19587,
                      "src": "6562:17:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$_t_address_$",
                        "typeString": "function (address,address) returns (address)"
                      }
                    },
                    "id": 20075,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "6562:33:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "6549:46:45"
                },
                {
                  "assignments": [
                    20078
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20078,
                      "mutability": "mutable",
                      "name": "reward",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20221,
                      "src": "6601:14:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 20077,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "6601:7:45",
                        "stateMutability": "nonpayable",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20084,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20080,
                            "name": "wstaking",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20067,
                            "src": "6635:8:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 20079,
                          "name": "IWStakingRewards",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 25843,
                          "src": "6618:16:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                            "typeString": "type(contract IWStakingRewards)"
                          }
                        },
                        "id": 20081,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "6618:26:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                          "typeString": "contract IWStakingRewards"
                        }
                      },
                      "id": 20082,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "reward",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 25842,
                      "src": "6618:33:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_nonpayable$__$returns$_t_address_$",
                        "typeString": "function () external returns (address)"
                      }
                    },
                    "id": 20083,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "6618:35:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "6601:52:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20086,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20061,
                        "src": "6707:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20087,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20063,
                        "src": "6715:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20088,
                        "name": "amt",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20065,
                        "src": "6723:3:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                          "typeString": "struct UniswapV2SpellV1.Amounts calldata"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20089,
                        "name": "lp",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20071,
                        "src": "6728:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                          "typeString": "struct UniswapV2SpellV1.Amounts calldata"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20085,
                      "name": "addLiquidityInternal",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20009,
                      "src": "6686:20:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_Amounts_$19773_calldata_ptr_$_t_address_$returns$__$",
                        "typeString": "function (address,address,struct UniswapV2SpellV1.Amounts calldata,address)"
                      }
                    },
                    "id": 20090,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "6686:45:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20091,
                  "nodeType": "ExpressionStatement",
                  "src": "6686:45:45"
                },
                {
                  "assignments": [
                    null,
                    20093,
                    20095,
                    20097
                  ],
                  "declarations": [
                    null,
                    {
                      "constant": false,
                      "id": 20093,
                      "mutability": "mutable",
                      "name": "collToken",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20221,
                      "src": "6771:17:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 20092,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "6771:7:45",
                        "stateMutability": "nonpayable",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    },
                    {
                      "constant": false,
                      "id": 20095,
                      "mutability": "mutable",
                      "name": "collId",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20221,
                      "src": "6790:11:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20094,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "6790:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    },
                    {
                      "constant": false,
                      "id": 20097,
                      "mutability": "mutable",
                      "name": "collSize",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20221,
                      "src": "6803:13:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20096,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "6803:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20101,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 20098,
                        "name": "bank",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15333,
                        "src": "6820:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IBank_$24391",
                          "typeString": "contract IBank"
                        }
                      },
                      "id": 20099,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getCurrentPositionInfo",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24383,
                      "src": "6820:27:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$__$returns$_t_address_$_t_address_$_t_uint256_$_t_uint256_$",
                        "typeString": "function () view external returns (address,address,uint256,uint256)"
                      }
                    },
                    "id": 20100,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "6820:29:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$_t_address_$_t_address_$_t_uint256_$_t_uint256_$",
                      "typeString": "tuple(address,address,uint256,uint256)"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "6768:81:45"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 20104,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "id": 20102,
                      "name": "collSize",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20097,
                      "src": "6859:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "argumentTypes": null,
                      "hexValue": "30",
                      "id": 20103,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "6870:1:45",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "6859:12:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 20141,
                  "nodeType": "IfStatement",
                  "src": "6855:318:45",
                  "trueBody": {
                    "id": 20140,
                    "nodeType": "Block",
                    "src": "6873:300:45",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              },
                              "id": 20113,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 20110,
                                    "name": "collId",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20095,
                                    "src": "6936:6:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "arguments": [
                                      {
                                        "argumentTypes": null,
                                        "id": 20107,
                                        "name": "collToken",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 20093,
                                        "src": "6906:9:45",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        }
                                      ],
                                      "id": 20106,
                                      "name": "IWStakingRewards",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 25843,
                                      "src": "6889:16:45",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                                        "typeString": "type(contract IWStakingRewards)"
                                      }
                                    },
                                    "id": 20108,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "6889:27:45",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                                      "typeString": "contract IWStakingRewards"
                                    }
                                  },
                                  "id": 20109,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "getUnderlyingToken",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 25802,
                                  "src": "6889:46:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_address_$",
                                    "typeString": "function (uint256) view external returns (address)"
                                  }
                                },
                                "id": 20111,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "6889:54:45",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "==",
                              "rightExpression": {
                                "argumentTypes": null,
                                "id": 20112,
                                "name": "lp",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20071,
                                "src": "6947:2:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "src": "6889:60:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "hexValue": "696e636f727265637420756e6465726c79696e67",
                              "id": 20114,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "6951:22:45",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_ce16acb2587e4e9fe6a6da15fb74270074dc10798c229be13e31273addbbac1e",
                                "typeString": "literal_string \"incorrect underlying\""
                              },
                              "value": "incorrect underlying"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              {
                                "typeIdentifier": "t_stringliteral_ce16acb2587e4e9fe6a6da15fb74270074dc10798c229be13e31273addbbac1e",
                                "typeString": "literal_string \"incorrect underlying\""
                              }
                            ],
                            "id": 20105,
                            "name": "require",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              -18,
                              -18
                            ],
                            "referencedDeclaration": -18,
                            "src": "6881:7:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (bool,string memory) pure"
                            }
                          },
                          "id": 20115,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "6881:93:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 20116,
                        "nodeType": "ExpressionStatement",
                        "src": "6881:93:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              },
                              "id": 20120,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "id": 20118,
                                "name": "collToken",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20093,
                                "src": "6990:9:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "==",
                              "rightExpression": {
                                "argumentTypes": null,
                                "id": 20119,
                                "name": "wstaking",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20067,
                                "src": "7003:8:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "src": "6990:21:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "hexValue": "636f6c6c61746572616c20746f6b656e202620777374616b696e67206d69736d617463686564",
                              "id": 20121,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "7013:40:45",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_1439dfb5b355687e7be7c0ce18d37bed21515d4de64abbce8c5ae0e4f8e6447c",
                                "typeString": "literal_string \"collateral token & wstaking mismatched\""
                              },
                              "value": "collateral token & wstaking mismatched"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              {
                                "typeIdentifier": "t_stringliteral_1439dfb5b355687e7be7c0ce18d37bed21515d4de64abbce8c5ae0e4f8e6447c",
                                "typeString": "literal_string \"collateral token & wstaking mismatched\""
                              }
                            ],
                            "id": 20117,
                            "name": "require",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              -18,
                              -18
                            ],
                            "referencedDeclaration": -18,
                            "src": "6982:7:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (bool,string memory) pure"
                            }
                          },
                          "id": 20122,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "6982:72:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 20123,
                        "nodeType": "ExpressionStatement",
                        "src": "6982:72:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 20127,
                              "name": "wstaking",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20067,
                              "src": "7082:8:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "id": 20128,
                              "name": "collId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20095,
                              "src": "7092:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "id": 20129,
                              "name": "collSize",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20097,
                              "src": "7100:8:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "id": 20124,
                              "name": "bank",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15333,
                              "src": "7062:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IBank_$24391",
                                "typeString": "contract IBank"
                              }
                            },
                            "id": 20126,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "takeCollateral",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 24344,
                            "src": "7062:19:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$",
                              "typeString": "function (address,uint256,uint256) external"
                            }
                          },
                          "id": 20130,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "7062:47:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 20131,
                        "nodeType": "ExpressionStatement",
                        "src": "7062:47:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 20136,
                              "name": "collId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20095,
                              "src": "7149:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "id": 20137,
                              "name": "collSize",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20097,
                              "src": "7157:8:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20133,
                                  "name": "wstaking",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20067,
                                  "src": "7134:8:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                ],
                                "id": 20132,
                                "name": "IWStakingRewards",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 25843,
                                "src": "7117:16:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                                  "typeString": "type(contract IWStakingRewards)"
                                }
                              },
                              "id": 20134,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "7117:26:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                                "typeString": "contract IWStakingRewards"
                              }
                            },
                            "id": 20135,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "burn",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 25837,
                            "src": "7117:31:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$returns$_t_uint256_$",
                              "typeString": "function (uint256,uint256) external returns (uint256)"
                            }
                          },
                          "id": 20138,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "7117:49:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 20139,
                        "nodeType": "ExpressionStatement",
                        "src": "7117:49:45"
                      }
                    ]
                  }
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20143,
                        "name": "lp",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20071,
                        "src": "7218:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20144,
                        "name": "wstaking",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20067,
                        "src": "7222:8:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20142,
                      "name": "ensureApprove",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15423,
                      "src": "7204:13:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$",
                        "typeString": "function (address,address)"
                      }
                    },
                    "id": 20145,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "7204:27:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20146,
                  "nodeType": "ExpressionStatement",
                  "src": "7204:27:45"
                },
                {
                  "assignments": [
                    20148
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20148,
                      "mutability": "mutable",
                      "name": "amount",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20221,
                      "src": "7237:11:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20147,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "7237:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20158,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20155,
                            "name": "this",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": -28,
                            "src": "7280:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                              "typeString": "contract UniswapV2SpellV1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                              "typeString": "contract UniswapV2SpellV1"
                            }
                          ],
                          "id": 20154,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "7272:7:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_address_$",
                            "typeString": "type(address)"
                          },
                          "typeName": {
                            "id": 20153,
                            "name": "address",
                            "nodeType": "ElementaryTypeName",
                            "src": "7272:7:45",
                            "typeDescriptions": {
                              "typeIdentifier": null,
                              "typeString": null
                            }
                          }
                        },
                        "id": 20156,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "7272:13:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20150,
                            "name": "lp",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20071,
                            "src": "7258:2:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 20149,
                          "name": "IERC20",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 23924,
                          "src": "7251:6:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_IERC20_$23924_$",
                            "typeString": "type(contract IERC20)"
                          }
                        },
                        "id": 20151,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "7251:10:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IERC20_$23924",
                          "typeString": "contract IERC20"
                        }
                      },
                      "id": 20152,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "balanceOf",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23863,
                      "src": "7251:20:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                        "typeString": "function (address) view external returns (uint256)"
                      }
                    },
                    "id": 20157,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "7251:35:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "7237:49:45"
                },
                {
                  "assignments": [
                    20160
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20160,
                      "mutability": "mutable",
                      "name": "id",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20221,
                      "src": "7292:7:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20159,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "7292:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20167,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20165,
                        "name": "amount",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20148,
                        "src": "7334:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20162,
                            "name": "wstaking",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20067,
                            "src": "7319:8:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 20161,
                          "name": "IWStakingRewards",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 25843,
                          "src": "7302:16:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                            "typeString": "type(contract IWStakingRewards)"
                          }
                        },
                        "id": 20163,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "7302:26:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                          "typeString": "contract IWStakingRewards"
                        }
                      },
                      "id": 20164,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "mint",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 25827,
                      "src": "7302:31:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$_t_uint256_$",
                        "typeString": "function (uint256) external returns (uint256)"
                      }
                    },
                    "id": 20166,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "7302:39:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "7292:49:45"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "id": 20181,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "UnaryOperation",
                    "operator": "!",
                    "prefix": true,
                    "src": "7351:74:45",
                    "subExpression": {
                      "argumentTypes": null,
                      "arguments": [
                        {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 20174,
                              "name": "this",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": -28,
                              "src": "7404:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                "typeString": "contract UniswapV2SpellV1"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                "typeString": "contract UniswapV2SpellV1"
                              }
                            ],
                            "id": 20173,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "7396:7:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_address_$",
                              "typeString": "type(address)"
                            },
                            "typeName": {
                              "id": 20172,
                              "name": "address",
                              "nodeType": "ElementaryTypeName",
                              "src": "7396:7:45",
                              "typeDescriptions": {
                                "typeIdentifier": null,
                                "typeString": null
                              }
                            }
                          },
                          "id": 20175,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "7396:13:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_address_payable",
                            "typeString": "address payable"
                          }
                        },
                        {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 20178,
                              "name": "bank",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15333,
                              "src": "7419:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IBank_$24391",
                                "typeString": "contract IBank"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_contract$_IBank_$24391",
                                "typeString": "contract IBank"
                              }
                            ],
                            "id": 20177,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "7411:7:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_address_$",
                              "typeString": "type(address)"
                            },
                            "typeName": {
                              "id": 20176,
                              "name": "address",
                              "nodeType": "ElementaryTypeName",
                              "src": "7411:7:45",
                              "typeDescriptions": {
                                "typeIdentifier": null,
                                "typeString": null
                              }
                            }
                          },
                          "id": 20179,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "7411:13:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_address_payable",
                            "typeString": "address payable"
                          },
                          {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        ],
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 20169,
                              "name": "wstaking",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20067,
                              "src": "7369:8:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            ],
                            "id": 20168,
                            "name": "IWStakingRewards",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 25843,
                            "src": "7352:16:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                              "typeString": "type(contract IWStakingRewards)"
                            }
                          },
                          "id": 20170,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "7352:26:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                            "typeString": "contract IWStakingRewards"
                          }
                        },
                        "id": 20171,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "isApprovedForAll",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 23815,
                        "src": "7352:43:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$",
                          "typeString": "function (address,address) view external returns (bool)"
                        }
                      },
                      "id": 20180,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "7352:73:45",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 20194,
                  "nodeType": "IfStatement",
                  "src": "7347:160:45",
                  "trueBody": {
                    "id": 20193,
                    "nodeType": "Block",
                    "src": "7427:80:45",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20188,
                                  "name": "bank",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 15333,
                                  "src": "7488:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_contract$_IBank_$24391",
                                    "typeString": "contract IBank"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_contract$_IBank_$24391",
                                    "typeString": "contract IBank"
                                  }
                                ],
                                "id": 20187,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "7480:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_address_$",
                                  "typeString": "type(address)"
                                },
                                "typeName": {
                                  "id": 20186,
                                  "name": "address",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "7480:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": null,
                                    "typeString": null
                                  }
                                }
                              },
                              "id": 20189,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "7480:13:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "hexValue": "74727565",
                              "id": 20190,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "bool",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "7495:4:45",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              "value": "true"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              },
                              {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20183,
                                  "name": "wstaking",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20067,
                                  "src": "7452:8:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                ],
                                "id": 20182,
                                "name": "IWStakingRewards",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 25843,
                                "src": "7435:16:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                                  "typeString": "type(contract IWStakingRewards)"
                                }
                              },
                              "id": 20184,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "7435:26:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                                "typeString": "contract IWStakingRewards"
                              }
                            },
                            "id": 20185,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "setApprovalForAll",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 23805,
                            "src": "7435:44:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bool_$returns$__$",
                              "typeString": "function (address,bool) external"
                            }
                          },
                          "id": 20191,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "7435:65:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 20192,
                        "nodeType": "ExpressionStatement",
                        "src": "7435:65:45"
                      }
                    ]
                  }
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20200,
                            "name": "wstaking",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20067,
                            "src": "7539:8:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 20199,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "7531:7:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_address_$",
                            "typeString": "type(address)"
                          },
                          "typeName": {
                            "id": 20198,
                            "name": "address",
                            "nodeType": "ElementaryTypeName",
                            "src": "7531:7:45",
                            "typeDescriptions": {
                              "typeIdentifier": null,
                              "typeString": null
                            }
                          }
                        },
                        "id": 20201,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "7531:17:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20202,
                        "name": "id",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20160,
                        "src": "7550:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20203,
                        "name": "amount",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20148,
                        "src": "7554:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 20195,
                        "name": "bank",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15333,
                        "src": "7512:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IBank_$24391",
                          "typeString": "contract IBank"
                        }
                      },
                      "id": 20197,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "putCollateral",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24334,
                      "src": "7512:18:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256,uint256) external"
                      }
                    },
                    "id": 20204,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "7512:49:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20205,
                  "nodeType": "ExpressionStatement",
                  "src": "7512:49:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "id": 20206,
                      "name": "doRefundETH",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15546,
                      "src": "7604:11:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
                        "typeString": "function ()"
                      }
                    },
                    "id": 20207,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "7604:13:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20208,
                  "nodeType": "ExpressionStatement",
                  "src": "7604:13:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20210,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20061,
                        "src": "7632:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20209,
                      "name": "doRefund",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15498,
                      "src": "7623:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
                        "typeString": "function (address)"
                      }
                    },
                    "id": 20211,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "7623:16:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20212,
                  "nodeType": "ExpressionStatement",
                  "src": "7623:16:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20214,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20063,
                        "src": "7654:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20213,
                      "name": "doRefund",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15498,
                      "src": "7645:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
                        "typeString": "function (address)"
                      }
                    },
                    "id": 20215,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "7645:16:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20216,
                  "nodeType": "ExpressionStatement",
                  "src": "7645:16:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20218,
                        "name": "reward",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20078,
                        "src": "7701:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20217,
                      "name": "doRefund",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15498,
                      "src": "7692:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
                        "typeString": "function (address)"
                      }
                    },
                    "id": 20219,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "7692:16:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20220,
                  "nodeType": "ExpressionStatement",
                  "src": "7692:16:45"
                }
              ]
            },
            "documentation": {
              "id": 20059,
              "nodeType": "StructuredDocumentation",
              "src": "6135:259:45",
              "text": "@dev Add liquidity to Uniswap pool, with staking rewards\n @param tokenA Token A for the pair\n @param tokenB Token B for the pair\n @param amt Amounts of tokens to supply, borrow, and get.\n @param wstaking Wrapped staking rewards address"
            },
            "functionSelector": "d57cdec5",
            "id": 20222,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "addLiquidityWStakingRewards",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 20068,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 20061,
                  "mutability": "mutable",
                  "name": "tokenA",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20222,
                  "src": "6439:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20060,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "6439:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20063,
                  "mutability": "mutable",
                  "name": "tokenB",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20222,
                  "src": "6459:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20062,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "6459:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20065,
                  "mutability": "mutable",
                  "name": "amt",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20222,
                  "src": "6479:20:45",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_Amounts_$19773_calldata_ptr",
                    "typeString": "struct UniswapV2SpellV1.Amounts"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 20064,
                    "name": "Amounts",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 19773,
                    "src": "6479:7:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Amounts_$19773_storage_ptr",
                      "typeString": "struct UniswapV2SpellV1.Amounts"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20067,
                  "mutability": "mutable",
                  "name": "wstaking",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20222,
                  "src": "6505:16:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20066,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "6505:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "6433:92:45"
            },
            "returnParameters": {
              "id": 20069,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "6543:0:45"
            },
            "scope": 20794,
            "src": "6397:1316:45",
            "stateMutability": "payable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "canonicalName": "UniswapV2SpellV1.RepayAmounts",
            "id": 20237,
            "members": [
              {
                "constant": false,
                "id": 20224,
                "mutability": "mutable",
                "name": "amtLPTake",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 20237,
                "src": "7743:14:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 20223,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "7743:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 20226,
                "mutability": "mutable",
                "name": "amtLPWithdraw",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 20237,
                "src": "7805:18:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 20225,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "7805:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 20228,
                "mutability": "mutable",
                "name": "amtARepay",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 20237,
                "src": "7874:14:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 20227,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "7874:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 20230,
                "mutability": "mutable",
                "name": "amtBRepay",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 20237,
                "src": "7917:14:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 20229,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "7917:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 20232,
                "mutability": "mutable",
                "name": "amtLPRepay",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 20237,
                "src": "7960:15:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 20231,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "7960:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 20234,
                "mutability": "mutable",
                "name": "amtAMin",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 20237,
                "src": "8006:12:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 20233,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "8006:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 20236,
                "mutability": "mutable",
                "name": "amtBMin",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 20237,
                "src": "8049:12:45",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 20235,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "8049:4:45",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              }
            ],
            "name": "RepayAmounts",
            "nodeType": "StructDefinition",
            "scope": 20794,
            "src": "7717:374:45",
            "visibility": "public"
          },
          {
            "body": {
              "id": 20569,
              "nodeType": "Block",
              "src": "8430:2231:45",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 20250,
                          "name": "whitelistedLpTokens",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20806,
                          "src": "8444:19:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
                            "typeString": "mapping(address => bool)"
                          }
                        },
                        "id": 20252,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 20251,
                          "name": "lp",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20246,
                          "src": "8464:2:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "8444:23:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "6c7020746f6b656e206e6f742077686974656c6973746564",
                        "id": 20253,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "8469:26:45",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_76fd3bc08be88f328f09320fa313b292032a5afbcfc99b8a4713537b5c013f5e",
                          "typeString": "literal_string \"lp token not whitelisted\""
                        },
                        "value": "lp token not whitelisted"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_76fd3bc08be88f328f09320fa313b292032a5afbcfc99b8a4713537b5c013f5e",
                          "typeString": "literal_string \"lp token not whitelisted\""
                        }
                      ],
                      "id": 20249,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        -18,
                        -18
                      ],
                      "referencedDeclaration": -18,
                      "src": "8436:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 20254,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "8436:60:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20255,
                  "nodeType": "ExpressionStatement",
                  "src": "8436:60:45"
                },
                {
                  "assignments": [
                    20257
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20257,
                      "mutability": "mutable",
                      "name": "positionId",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20569,
                      "src": "8502:15:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20256,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "8502:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20261,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 20258,
                        "name": "bank",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15333,
                        "src": "8520:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IBank_$24391",
                          "typeString": "contract IBank"
                        }
                      },
                      "id": 20259,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "POSITION_ID",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24238,
                      "src": "8520:16:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
                        "typeString": "function () view external returns (uint256)"
                      }
                    },
                    "id": 20260,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "8520:18:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "8502:36:45"
                },
                {
                  "assignments": [
                    20263
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20263,
                      "mutability": "mutable",
                      "name": "amtARepay",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20569,
                      "src": "8545:14:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20262,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "8545:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20266,
                  "initialValue": {
                    "argumentTypes": null,
                    "expression": {
                      "argumentTypes": null,
                      "id": 20264,
                      "name": "amt",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20244,
                      "src": "8562:3:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                        "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                      }
                    },
                    "id": 20265,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberName": "amtARepay",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 20228,
                    "src": "8562:13:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "8545:30:45"
                },
                {
                  "assignments": [
                    20268
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20268,
                      "mutability": "mutable",
                      "name": "amtBRepay",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20569,
                      "src": "8581:14:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20267,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "8581:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20271,
                  "initialValue": {
                    "argumentTypes": null,
                    "expression": {
                      "argumentTypes": null,
                      "id": 20269,
                      "name": "amt",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20244,
                      "src": "8598:3:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                        "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                      }
                    },
                    "id": 20270,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberName": "amtBRepay",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 20230,
                    "src": "8598:13:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "8581:30:45"
                },
                {
                  "assignments": [
                    20273
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20273,
                      "mutability": "mutable",
                      "name": "amtLPRepay",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20569,
                      "src": "8617:15:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20272,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "8617:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20276,
                  "initialValue": {
                    "argumentTypes": null,
                    "expression": {
                      "argumentTypes": null,
                      "id": 20274,
                      "name": "amt",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20244,
                      "src": "8635:3:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                        "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                      }
                    },
                    "id": 20275,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberName": "amtLPRepay",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 20232,
                    "src": "8635:14:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "8617:32:45"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 20283,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "id": 20277,
                      "name": "amtARepay",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20263,
                      "src": "8725:9:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "argumentTypes": null,
                      "arguments": [
                        {
                          "argumentTypes": null,
                          "id": 20281,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "UnaryOperation",
                          "operator": "-",
                          "prefix": true,
                          "src": "8743:2:45",
                          "subExpression": {
                            "argumentTypes": null,
                            "hexValue": "31",
                            "id": 20280,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "8744:1:45",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_1_by_1",
                              "typeString": "int_const 1"
                            },
                            "value": "1"
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_minus_1_by_1",
                            "typeString": "int_const -1"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_rational_minus_1_by_1",
                            "typeString": "int_const -1"
                          }
                        ],
                        "id": 20279,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "ElementaryTypeNameExpression",
                        "src": "8738:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_uint256_$",
                          "typeString": "type(uint256)"
                        },
                        "typeName": {
                          "id": 20278,
                          "name": "uint",
                          "nodeType": "ElementaryTypeName",
                          "src": "8738:4:45",
                          "typeDescriptions": {
                            "typeIdentifier": null,
                            "typeString": null
                          }
                        }
                      },
                      "id": 20282,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "typeConversion",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "8738:8:45",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "8725:21:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 20293,
                  "nodeType": "IfStatement",
                  "src": "8721:99:45",
                  "trueBody": {
                    "id": 20292,
                    "nodeType": "Block",
                    "src": "8748:72:45",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 20290,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 20284,
                            "name": "amtARepay",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20263,
                            "src": "8756:9:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 20287,
                                "name": "positionId",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20257,
                                "src": "8794:10:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 20288,
                                "name": "tokenA",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20240,
                                "src": "8806:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "id": 20285,
                                "name": "bank",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15333,
                                "src": "8768:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_IBank_$24391",
                                  "typeString": "contract IBank"
                                }
                              },
                              "id": 20286,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "borrowBalanceCurrent",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 24300,
                              "src": "8768:25:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_address_$returns$_t_uint256_$",
                                "typeString": "function (uint256,address) external returns (uint256)"
                              }
                            },
                            "id": 20289,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "8768:45:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "8756:57:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 20291,
                        "nodeType": "ExpressionStatement",
                        "src": "8756:57:45"
                      }
                    ]
                  }
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 20300,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "id": 20294,
                      "name": "amtBRepay",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20268,
                      "src": "8829:9:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "argumentTypes": null,
                      "arguments": [
                        {
                          "argumentTypes": null,
                          "id": 20298,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "UnaryOperation",
                          "operator": "-",
                          "prefix": true,
                          "src": "8847:2:45",
                          "subExpression": {
                            "argumentTypes": null,
                            "hexValue": "31",
                            "id": 20297,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "8848:1:45",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_1_by_1",
                              "typeString": "int_const 1"
                            },
                            "value": "1"
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_minus_1_by_1",
                            "typeString": "int_const -1"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_rational_minus_1_by_1",
                            "typeString": "int_const -1"
                          }
                        ],
                        "id": 20296,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "ElementaryTypeNameExpression",
                        "src": "8842:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_uint256_$",
                          "typeString": "type(uint256)"
                        },
                        "typeName": {
                          "id": 20295,
                          "name": "uint",
                          "nodeType": "ElementaryTypeName",
                          "src": "8842:4:45",
                          "typeDescriptions": {
                            "typeIdentifier": null,
                            "typeString": null
                          }
                        }
                      },
                      "id": 20299,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "typeConversion",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "8842:8:45",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "8829:21:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 20310,
                  "nodeType": "IfStatement",
                  "src": "8825:99:45",
                  "trueBody": {
                    "id": 20309,
                    "nodeType": "Block",
                    "src": "8852:72:45",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 20307,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 20301,
                            "name": "amtBRepay",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20268,
                            "src": "8860:9:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 20304,
                                "name": "positionId",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20257,
                                "src": "8898:10:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 20305,
                                "name": "tokenB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20242,
                                "src": "8910:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "id": 20302,
                                "name": "bank",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15333,
                                "src": "8872:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_IBank_$24391",
                                  "typeString": "contract IBank"
                                }
                              },
                              "id": 20303,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "borrowBalanceCurrent",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 24300,
                              "src": "8872:25:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_address_$returns$_t_uint256_$",
                                "typeString": "function (uint256,address) external returns (uint256)"
                              }
                            },
                            "id": 20306,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "8872:45:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "8860:57:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 20308,
                        "nodeType": "ExpressionStatement",
                        "src": "8860:57:45"
                      }
                    ]
                  }
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 20317,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "id": 20311,
                      "name": "amtLPRepay",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20273,
                      "src": "8933:10:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "argumentTypes": null,
                      "arguments": [
                        {
                          "argumentTypes": null,
                          "id": 20315,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "UnaryOperation",
                          "operator": "-",
                          "prefix": true,
                          "src": "8952:2:45",
                          "subExpression": {
                            "argumentTypes": null,
                            "hexValue": "31",
                            "id": 20314,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "8953:1:45",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_1_by_1",
                              "typeString": "int_const 1"
                            },
                            "value": "1"
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_minus_1_by_1",
                            "typeString": "int_const -1"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_rational_minus_1_by_1",
                            "typeString": "int_const -1"
                          }
                        ],
                        "id": 20313,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "ElementaryTypeNameExpression",
                        "src": "8947:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_uint256_$",
                          "typeString": "type(uint256)"
                        },
                        "typeName": {
                          "id": 20312,
                          "name": "uint",
                          "nodeType": "ElementaryTypeName",
                          "src": "8947:4:45",
                          "typeDescriptions": {
                            "typeIdentifier": null,
                            "typeString": null
                          }
                        }
                      },
                      "id": 20316,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "typeConversion",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "8947:8:45",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "8933:22:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 20327,
                  "nodeType": "IfStatement",
                  "src": "8929:97:45",
                  "trueBody": {
                    "id": 20326,
                    "nodeType": "Block",
                    "src": "8957:69:45",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 20324,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 20318,
                            "name": "amtLPRepay",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20273,
                            "src": "8965:10:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 20321,
                                "name": "positionId",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20257,
                                "src": "9004:10:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 20322,
                                "name": "lp",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20246,
                                "src": "9016:2:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "id": 20319,
                                "name": "bank",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15333,
                                "src": "8978:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_IBank_$24391",
                                  "typeString": "contract IBank"
                                }
                              },
                              "id": 20320,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "borrowBalanceCurrent",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 24300,
                              "src": "8978:25:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_address_$returns$_t_uint256_$",
                                "typeString": "function (uint256,address) external returns (uint256)"
                              }
                            },
                            "id": 20323,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "8978:41:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "8965:54:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 20325,
                        "nodeType": "ExpressionStatement",
                        "src": "8965:54:45"
                      }
                    ]
                  }
                },
                {
                  "assignments": [
                    20329
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20329,
                      "mutability": "mutable",
                      "name": "amtLPToRemove",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20569,
                      "src": "9076:18:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20328,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "9076:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20343,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 20340,
                          "name": "amt",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20244,
                          "src": "9137:3:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                            "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                          }
                        },
                        "id": 20341,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "amtLPWithdraw",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20226,
                        "src": "9137:17:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 20336,
                                "name": "this",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": -28,
                                "src": "9126:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                  "typeString": "contract UniswapV2SpellV1"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                  "typeString": "contract UniswapV2SpellV1"
                                }
                              ],
                              "id": 20335,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "9118:7:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_address_$",
                                "typeString": "type(address)"
                              },
                              "typeName": {
                                "id": 20334,
                                "name": "address",
                                "nodeType": "ElementaryTypeName",
                                "src": "9118:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": null,
                                  "typeString": null
                                }
                              }
                            },
                            "id": 20337,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "9118:13:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_address_payable",
                              "typeString": "address payable"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address_payable",
                              "typeString": "address payable"
                            }
                          ],
                          "expression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 20331,
                                "name": "lp",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20246,
                                "src": "9104:2:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "id": 20330,
                              "name": "IERC20",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 23924,
                              "src": "9097:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_IERC20_$23924_$",
                                "typeString": "type(contract IERC20)"
                              }
                            },
                            "id": 20332,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "9097:10:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_IERC20_$23924",
                              "typeString": "contract IERC20"
                            }
                          },
                          "id": 20333,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "balanceOf",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 23863,
                          "src": "9097:20:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                            "typeString": "function (address) view external returns (uint256)"
                          }
                        },
                        "id": 20338,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "9097:35:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 20339,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "sub",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23573,
                      "src": "9097:39:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                        "typeString": "function (uint256,uint256) pure returns (uint256)"
                      }
                    },
                    "id": 20342,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "9097:58:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "9076:79:45"
                },
                {
                  "assignments": [
                    20345
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20345,
                      "mutability": "mutable",
                      "name": "amtA",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20569,
                      "src": "9189:9:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20344,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "9189:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20346,
                  "initialValue": null,
                  "nodeType": "VariableDeclarationStatement",
                  "src": "9189:9:45"
                },
                {
                  "assignments": [
                    20348
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20348,
                      "mutability": "mutable",
                      "name": "amtB",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20569,
                      "src": "9204:9:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20347,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "9204:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20349,
                  "initialValue": null,
                  "nodeType": "VariableDeclarationStatement",
                  "src": "9204:9:45"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 20352,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "id": 20350,
                      "name": "amtLPToRemove",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20329,
                      "src": "9223:13:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "argumentTypes": null,
                      "hexValue": "30",
                      "id": 20351,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "9239:1:45",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "9223:17:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 20373,
                  "nodeType": "IfStatement",
                  "src": "9219:208:45",
                  "trueBody": {
                    "id": 20372,
                    "nodeType": "Block",
                    "src": "9242:185:45",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 20370,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "components": [
                              {
                                "argumentTypes": null,
                                "id": 20353,
                                "name": "amtA",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20345,
                                "src": "9251:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 20354,
                                "name": "amtB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20348,
                                "src": "9257:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "id": 20355,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "TupleExpression",
                            "src": "9250:12:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$",
                              "typeString": "tuple(uint256,uint256)"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "id": 20358,
                                "name": "tokenA",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20240,
                                "src": "9297:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 20359,
                                "name": "tokenB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20242,
                                "src": "9313:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 20360,
                                "name": "amtLPToRemove",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20329,
                                "src": "9329:13:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 20361,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "9352:1:45",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              },
                              {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 20362,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "9363:1:45",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              },
                              {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 20365,
                                    "name": "this",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": -28,
                                    "src": "9382:4:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                      "typeString": "contract UniswapV2SpellV1"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                      "typeString": "contract UniswapV2SpellV1"
                                    }
                                  ],
                                  "id": 20364,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "9374:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_address_$",
                                    "typeString": "type(address)"
                                  },
                                  "typeName": {
                                    "id": 20363,
                                    "name": "address",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "9374:7:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": null,
                                      "typeString": null
                                    }
                                  }
                                },
                                "id": 20366,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "9374:13:45",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address_payable",
                                  "typeString": "address payable"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 20367,
                                  "name": "block",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": -4,
                                  "src": "9397:5:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_magic_block",
                                    "typeString": "block"
                                  }
                                },
                                "id": 20368,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "timestamp",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": null,
                                "src": "9397:15:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                },
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                },
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                {
                                  "typeIdentifier": "t_address_payable",
                                  "typeString": "address payable"
                                },
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "id": 20356,
                                "name": "router",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19465,
                                "src": "9265:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                                  "typeString": "contract IUniswapV2Router02"
                                }
                              },
                              "id": 20357,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "removeLiquidity",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 27634,
                              "src": "9265:22:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_address_$_t_uint256_$returns$_t_uint256_$_t_uint256_$",
                                "typeString": "function (address,address,uint256,uint256,uint256,address,uint256) external returns (uint256,uint256)"
                              }
                            },
                            "id": 20369,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "9265:155:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$",
                              "typeString": "tuple(uint256,uint256)"
                            }
                          },
                          "src": "9250:170:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 20371,
                        "nodeType": "ExpressionStatement",
                        "src": "9250:170:45"
                      }
                    ]
                  }
                },
                {
                  "assignments": [
                    20375
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20375,
                      "mutability": "mutable",
                      "name": "amtADesired",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20569,
                      "src": "9459:16:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20374,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "9459:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20381,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 20378,
                          "name": "amt",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20244,
                          "src": "9492:3:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                            "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                          }
                        },
                        "id": 20379,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "amtAMin",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20234,
                        "src": "9492:11:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 20376,
                        "name": "amtARepay",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20263,
                        "src": "9478:9:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 20377,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "add",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23551,
                      "src": "9478:13:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                        "typeString": "function (uint256,uint256) pure returns (uint256)"
                      }
                    },
                    "id": 20380,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "9478:26:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "9459:45:45"
                },
                {
                  "assignments": [
                    20383
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20383,
                      "mutability": "mutable",
                      "name": "amtBDesired",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20569,
                      "src": "9510:16:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20382,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "9510:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20389,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 20386,
                          "name": "amt",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20244,
                          "src": "9543:3:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                            "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                          }
                        },
                        "id": 20387,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "amtBMin",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20236,
                        "src": "9543:11:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 20384,
                        "name": "amtBRepay",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20268,
                        "src": "9529:9:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 20385,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "add",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23551,
                      "src": "9529:13:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                        "typeString": "function (uint256,uint256) pure returns (uint256)"
                      }
                    },
                    "id": 20388,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "9529:26:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "9510:45:45"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    },
                    "id": 20396,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 20392,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "id": 20390,
                        "name": "amtA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20345,
                        "src": "9566:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "<",
                      "rightExpression": {
                        "argumentTypes": null,
                        "id": 20391,
                        "name": "amtADesired",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20375,
                        "src": "9573:11:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "src": "9566:18:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "&&",
                    "rightExpression": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 20395,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "id": 20393,
                        "name": "amtB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20348,
                        "src": "9588:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": ">",
                      "rightExpression": {
                        "argumentTypes": null,
                        "id": 20394,
                        "name": "amtBDesired",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20383,
                        "src": "9595:11:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "src": "9588:18:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "src": "9566:40:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "condition": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      },
                      "id": 20447,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 20443,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "id": 20441,
                          "name": "amtA",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20345,
                          "src": "9889:4:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": ">",
                        "rightExpression": {
                          "argumentTypes": null,
                          "id": 20442,
                          "name": "amtADesired",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20375,
                          "src": "9896:11:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "9889:18:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "&&",
                      "rightExpression": {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 20446,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "id": 20444,
                          "name": "amtB",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20348,
                          "src": "9911:4:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "<",
                        "rightExpression": {
                          "argumentTypes": null,
                          "id": 20445,
                          "name": "amtBDesired",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20383,
                          "src": "9918:11:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "9911:18:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      "src": "9889:40:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "falseBody": null,
                    "id": 20492,
                    "nodeType": "IfStatement",
                    "src": "9885:317:45",
                    "trueBody": {
                      "id": 20491,
                      "nodeType": "Block",
                      "src": "9931:271:45",
                      "statements": [
                        {
                          "assignments": [
                            20452
                          ],
                          "declarations": [
                            {
                              "constant": false,
                              "id": 20452,
                              "mutability": "mutable",
                              "name": "path",
                              "nodeType": "VariableDeclaration",
                              "overrides": null,
                              "scope": 20491,
                              "src": "9939:21:45",
                              "stateVariable": false,
                              "storageLocation": "memory",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                "typeString": "address[]"
                              },
                              "typeName": {
                                "baseType": {
                                  "id": 20450,
                                  "name": "address",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "9939:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                },
                                "id": 20451,
                                "length": null,
                                "nodeType": "ArrayTypeName",
                                "src": "9939:9:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                                  "typeString": "address[]"
                                }
                              },
                              "value": null,
                              "visibility": "internal"
                            }
                          ],
                          "id": 20458,
                          "initialValue": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "hexValue": "32",
                                "id": 20456,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "9977:1:45",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_2_by_1",
                                  "typeString": "int_const 2"
                                },
                                "value": "2"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_2_by_1",
                                  "typeString": "int_const 2"
                                }
                              ],
                              "id": 20455,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "NewExpression",
                              "src": "9963:13:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$",
                                "typeString": "function (uint256) pure returns (address[] memory)"
                              },
                              "typeName": {
                                "baseType": {
                                  "id": 20453,
                                  "name": "address",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "9967:7:45",
                                  "stateMutability": "nonpayable",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                },
                                "id": 20454,
                                "length": null,
                                "nodeType": "ArrayTypeName",
                                "src": "9967:9:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                                  "typeString": "address[]"
                                }
                              }
                            },
                            "id": 20457,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "9963:16:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                              "typeString": "address[] memory"
                            }
                          },
                          "nodeType": "VariableDeclarationStatement",
                          "src": "9939:40:45"
                        },
                        {
                          "expression": {
                            "argumentTypes": null,
                            "id": 20469,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftHandSide": {
                              "argumentTypes": null,
                              "components": [
                                {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "id": 20459,
                                    "name": "path",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20452,
                                    "src": "9988:4:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                      "typeString": "address[] memory"
                                    }
                                  },
                                  "id": 20461,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "hexValue": "30",
                                    "id": 20460,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "9993:1:45",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    },
                                    "value": "0"
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "nodeType": "IndexAccess",
                                  "src": "9988:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                },
                                {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "id": 20462,
                                    "name": "path",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20452,
                                    "src": "9997:4:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                      "typeString": "address[] memory"
                                    }
                                  },
                                  "id": 20464,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "hexValue": "31",
                                    "id": 20463,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "10002:1:45",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_1_by_1",
                                      "typeString": "int_const 1"
                                    },
                                    "value": "1"
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "nodeType": "IndexAccess",
                                  "src": "9997:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                }
                              ],
                              "id": 20465,
                              "isConstant": false,
                              "isInlineArray": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": true,
                              "nodeType": "TupleExpression",
                              "src": "9987:18:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_tuple$_t_address_$_t_address_$",
                                "typeString": "tuple(address,address)"
                              }
                            },
                            "nodeType": "Assignment",
                            "operator": "=",
                            "rightHandSide": {
                              "argumentTypes": null,
                              "components": [
                                {
                                  "argumentTypes": null,
                                  "id": 20466,
                                  "name": "tokenA",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20240,
                                  "src": "10009:6:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                },
                                {
                                  "argumentTypes": null,
                                  "id": 20467,
                                  "name": "tokenB",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20242,
                                  "src": "10017:6:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                }
                              ],
                              "id": 20468,
                              "isConstant": false,
                              "isInlineArray": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "TupleExpression",
                              "src": "10008:16:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_tuple$_t_address_$_t_address_$",
                                "typeString": "tuple(address,address)"
                              }
                            },
                            "src": "9987:37:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$__$",
                              "typeString": "tuple()"
                            }
                          },
                          "id": 20470,
                          "nodeType": "ExpressionStatement",
                          "src": "9987:37:45"
                        },
                        {
                          "expression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 20476,
                                    "name": "amtB",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20348,
                                    "src": "10089:4:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 20474,
                                    "name": "amtBDesired",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20383,
                                    "src": "10073:11:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "id": 20475,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "sub",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 23573,
                                  "src": "10073:15:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                                    "typeString": "function (uint256,uint256) pure returns (uint256)"
                                  }
                                },
                                "id": 20477,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "10073:21:45",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 20480,
                                    "name": "amtADesired",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20375,
                                    "src": "10113:11:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 20478,
                                    "name": "amtA",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20345,
                                    "src": "10104:4:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "id": 20479,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "sub",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 23573,
                                  "src": "10104:8:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                                    "typeString": "function (uint256,uint256) pure returns (uint256)"
                                  }
                                },
                                "id": 20481,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "10104:21:45",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 20482,
                                "name": "path",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20452,
                                "src": "10135:4:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                  "typeString": "address[] memory"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 20485,
                                    "name": "this",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": -28,
                                    "src": "10157:4:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                      "typeString": "contract UniswapV2SpellV1"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                      "typeString": "contract UniswapV2SpellV1"
                                    }
                                  ],
                                  "id": 20484,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "10149:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_address_$",
                                    "typeString": "type(address)"
                                  },
                                  "typeName": {
                                    "id": 20483,
                                    "name": "address",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "10149:7:45",
                                    "typeDescriptions": {
                                      "typeIdentifier": null,
                                      "typeString": null
                                    }
                                  }
                                },
                                "id": 20486,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "10149:13:45",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address_payable",
                                  "typeString": "address payable"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 20487,
                                  "name": "block",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": -4,
                                  "src": "10172:5:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_magic_block",
                                    "typeString": "block"
                                  }
                                },
                                "id": 20488,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "timestamp",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": null,
                                "src": "10172:15:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                  "typeString": "address[] memory"
                                },
                                {
                                  "typeIdentifier": "t_address_payable",
                                  "typeString": "address payable"
                                },
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "id": 20471,
                                "name": "router",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 19465,
                                "src": "10032:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                                  "typeString": "contract IUniswapV2Router02"
                                }
                              },
                              "id": 20473,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "swapTokensForExactTokens",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 27743,
                              "src": "10032:31:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$_t_address_$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$",
                                "typeString": "function (uint256,uint256,address[] memory,address,uint256) external returns (uint256[] memory)"
                              }
                            },
                            "id": 20489,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "10032:163:45",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                              "typeString": "uint256[] memory"
                            }
                          },
                          "id": 20490,
                          "nodeType": "ExpressionStatement",
                          "src": "10032:163:45"
                        }
                      ]
                    }
                  },
                  "id": 20493,
                  "nodeType": "IfStatement",
                  "src": "9562:640:45",
                  "trueBody": {
                    "id": 20440,
                    "nodeType": "Block",
                    "src": "9608:271:45",
                    "statements": [
                      {
                        "assignments": [
                          20401
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 20401,
                            "mutability": "mutable",
                            "name": "path",
                            "nodeType": "VariableDeclaration",
                            "overrides": null,
                            "scope": 20440,
                            "src": "9616:21:45",
                            "stateVariable": false,
                            "storageLocation": "memory",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                              "typeString": "address[]"
                            },
                            "typeName": {
                              "baseType": {
                                "id": 20399,
                                "name": "address",
                                "nodeType": "ElementaryTypeName",
                                "src": "9616:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "id": 20400,
                              "length": null,
                              "nodeType": "ArrayTypeName",
                              "src": "9616:9:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                                "typeString": "address[]"
                              }
                            },
                            "value": null,
                            "visibility": "internal"
                          }
                        ],
                        "id": 20407,
                        "initialValue": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "hexValue": "32",
                              "id": 20405,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "9654:1:45",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_2_by_1",
                                "typeString": "int_const 2"
                              },
                              "value": "2"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_rational_2_by_1",
                                "typeString": "int_const 2"
                              }
                            ],
                            "id": 20404,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "NewExpression",
                            "src": "9640:13:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$",
                              "typeString": "function (uint256) pure returns (address[] memory)"
                            },
                            "typeName": {
                              "baseType": {
                                "id": 20402,
                                "name": "address",
                                "nodeType": "ElementaryTypeName",
                                "src": "9644:7:45",
                                "stateMutability": "nonpayable",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "id": 20403,
                              "length": null,
                              "nodeType": "ArrayTypeName",
                              "src": "9644:9:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                                "typeString": "address[]"
                              }
                            }
                          },
                          "id": 20406,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "9640:16:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                            "typeString": "address[] memory"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "9616:40:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 20418,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "components": [
                              {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "id": 20408,
                                  "name": "path",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20401,
                                  "src": "9665:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                    "typeString": "address[] memory"
                                  }
                                },
                                "id": 20410,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "hexValue": "30",
                                  "id": 20409,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "9670:1:45",
                                  "subdenomination": null,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "nodeType": "IndexAccess",
                                "src": "9665:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "id": 20411,
                                  "name": "path",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20401,
                                  "src": "9674:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                    "typeString": "address[] memory"
                                  }
                                },
                                "id": 20413,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "hexValue": "31",
                                  "id": 20412,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "9679:1:45",
                                  "subdenomination": null,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_1_by_1",
                                    "typeString": "int_const 1"
                                  },
                                  "value": "1"
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "nodeType": "IndexAccess",
                                "src": "9674:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "id": 20414,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "TupleExpression",
                            "src": "9664:18:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_address_$_t_address_$",
                              "typeString": "tuple(address,address)"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "components": [
                              {
                                "argumentTypes": null,
                                "id": 20415,
                                "name": "tokenB",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20242,
                                "src": "9686:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "id": 20416,
                                "name": "tokenA",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20240,
                                "src": "9694:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              }
                            ],
                            "id": 20417,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "TupleExpression",
                            "src": "9685:16:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_address_$_t_address_$",
                              "typeString": "tuple(address,address)"
                            }
                          },
                          "src": "9664:37:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 20419,
                        "nodeType": "ExpressionStatement",
                        "src": "9664:37:45"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20425,
                                  "name": "amtA",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20345,
                                  "src": "9766:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 20423,
                                  "name": "amtADesired",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20375,
                                  "src": "9750:11:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "id": 20424,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "sub",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 23573,
                                "src": "9750:15:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                                  "typeString": "function (uint256,uint256) pure returns (uint256)"
                                }
                              },
                              "id": 20426,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "functionCall",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "9750:21:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20429,
                                  "name": "amtBDesired",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20383,
                                  "src": "9790:11:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 20427,
                                  "name": "amtB",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20348,
                                  "src": "9781:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "id": 20428,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "sub",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 23573,
                                "src": "9781:8:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
                                  "typeString": "function (uint256,uint256) pure returns (uint256)"
                                }
                              },
                              "id": 20430,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "functionCall",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "9781:21:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "id": 20431,
                              "name": "path",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20401,
                              "src": "9812:4:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                "typeString": "address[] memory"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20434,
                                  "name": "this",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": -28,
                                  "src": "9834:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                    "typeString": "contract UniswapV2SpellV1"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                    "typeString": "contract UniswapV2SpellV1"
                                  }
                                ],
                                "id": 20433,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "9826:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_address_$",
                                  "typeString": "type(address)"
                                },
                                "typeName": {
                                  "id": 20432,
                                  "name": "address",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "9826:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": null,
                                    "typeString": null
                                  }
                                }
                              },
                              "id": 20435,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "9826:13:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_address_payable",
                                "typeString": "address payable"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 20436,
                                "name": "block",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": -4,
                                "src": "9849:5:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_magic_block",
                                  "typeString": "block"
                                }
                              },
                              "id": 20437,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "timestamp",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": null,
                              "src": "9849:15:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                "typeString": "address[] memory"
                              },
                              {
                                "typeIdentifier": "t_address_payable",
                                "typeString": "address payable"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "id": 20420,
                              "name": "router",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19465,
                              "src": "9709:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IUniswapV2Router02_$26041",
                                "typeString": "contract IUniswapV2Router02"
                              }
                            },
                            "id": 20422,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "swapTokensForExactTokens",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 27743,
                            "src": "9709:31:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$_t_address_$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$",
                              "typeString": "function (uint256,uint256,address[] memory,address,uint256) external returns (uint256[] memory)"
                            }
                          },
                          "id": 20438,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "9709:163:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                            "typeString": "uint256[] memory"
                          }
                        },
                        "id": 20439,
                        "nodeType": "ExpressionStatement",
                        "src": "9709:163:45"
                      }
                    ]
                  }
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20495,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20240,
                        "src": "10232:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20496,
                        "name": "amtARepay",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20263,
                        "src": "10240:9:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 20494,
                      "name": "doRepay",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15596,
                      "src": "10224:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 20497,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10224:26:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20498,
                  "nodeType": "ExpressionStatement",
                  "src": "10224:26:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20500,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20242,
                        "src": "10264:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20501,
                        "name": "amtBRepay",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20268,
                        "src": "10272:9:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 20499,
                      "name": "doRepay",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15596,
                      "src": "10256:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 20502,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10256:26:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20503,
                  "nodeType": "ExpressionStatement",
                  "src": "10256:26:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20505,
                        "name": "lp",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20246,
                        "src": "10296:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20506,
                        "name": "amtLPRepay",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20273,
                        "src": "10300:10:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 20504,
                      "name": "doRepay",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15596,
                      "src": "10288:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 20507,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10288:23:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20508,
                  "nodeType": "ExpressionStatement",
                  "src": "10288:23:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 20521,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20516,
                                  "name": "this",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": -28,
                                  "src": "10386:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                    "typeString": "contract UniswapV2SpellV1"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                    "typeString": "contract UniswapV2SpellV1"
                                  }
                                ],
                                "id": 20515,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "10378:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_address_$",
                                  "typeString": "type(address)"
                                },
                                "typeName": {
                                  "id": 20514,
                                  "name": "address",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "10378:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": null,
                                    "typeString": null
                                  }
                                }
                              },
                              "id": 20517,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "10378:13:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_address_payable",
                                "typeString": "address payable"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address_payable",
                                "typeString": "address payable"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20511,
                                  "name": "tokenA",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20240,
                                  "src": "10360:6:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                ],
                                "id": 20510,
                                "name": "IERC20",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 23924,
                                "src": "10353:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_IERC20_$23924_$",
                                  "typeString": "type(contract IERC20)"
                                }
                              },
                              "id": 20512,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "10353:14:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IERC20_$23924",
                                "typeString": "contract IERC20"
                              }
                            },
                            "id": 20513,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "balanceOf",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 23863,
                            "src": "10353:24:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                              "typeString": "function (address) view external returns (uint256)"
                            }
                          },
                          "id": 20518,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "10353:39:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": ">=",
                        "rightExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 20519,
                            "name": "amt",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20244,
                            "src": "10396:3:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                              "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                            }
                          },
                          "id": 20520,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "amtAMin",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 20234,
                          "src": "10396:11:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "10353:54:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      ],
                      "id": 20509,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        -18,
                        -18
                      ],
                      "referencedDeclaration": -18,
                      "src": "10345:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
                        "typeString": "function (bool) pure"
                      }
                    },
                    "id": 20522,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10345:63:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20523,
                  "nodeType": "ExpressionStatement",
                  "src": "10345:63:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 20536,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20531,
                                  "name": "this",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": -28,
                                  "src": "10455:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                    "typeString": "contract UniswapV2SpellV1"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                    "typeString": "contract UniswapV2SpellV1"
                                  }
                                ],
                                "id": 20530,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "10447:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_address_$",
                                  "typeString": "type(address)"
                                },
                                "typeName": {
                                  "id": 20529,
                                  "name": "address",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "10447:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": null,
                                    "typeString": null
                                  }
                                }
                              },
                              "id": 20532,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "10447:13:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_address_payable",
                                "typeString": "address payable"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address_payable",
                                "typeString": "address payable"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20526,
                                  "name": "tokenB",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20242,
                                  "src": "10429:6:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                ],
                                "id": 20525,
                                "name": "IERC20",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 23924,
                                "src": "10422:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_IERC20_$23924_$",
                                  "typeString": "type(contract IERC20)"
                                }
                              },
                              "id": 20527,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "10422:14:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IERC20_$23924",
                                "typeString": "contract IERC20"
                              }
                            },
                            "id": 20528,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "balanceOf",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 23863,
                            "src": "10422:24:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                              "typeString": "function (address) view external returns (uint256)"
                            }
                          },
                          "id": 20533,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "10422:39:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": ">=",
                        "rightExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 20534,
                            "name": "amt",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20244,
                            "src": "10465:3:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                              "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                            }
                          },
                          "id": 20535,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "amtBMin",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 20236,
                          "src": "10465:11:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "10422:54:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      ],
                      "id": 20524,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        -18,
                        -18
                      ],
                      "referencedDeclaration": -18,
                      "src": "10414:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
                        "typeString": "function (bool) pure"
                      }
                    },
                    "id": 20537,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10414:63:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20538,
                  "nodeType": "ExpressionStatement",
                  "src": "10414:63:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 20551,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20546,
                                  "name": "this",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": -28,
                                  "src": "10520:4:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                    "typeString": "contract UniswapV2SpellV1"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                                    "typeString": "contract UniswapV2SpellV1"
                                  }
                                ],
                                "id": 20545,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "10512:7:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_address_$",
                                  "typeString": "type(address)"
                                },
                                "typeName": {
                                  "id": 20544,
                                  "name": "address",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "10512:7:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": null,
                                    "typeString": null
                                  }
                                }
                              },
                              "id": 20547,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "10512:13:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_address_payable",
                                "typeString": "address payable"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address_payable",
                                "typeString": "address payable"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20541,
                                  "name": "lp",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20246,
                                  "src": "10498:2:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                ],
                                "id": 20540,
                                "name": "IERC20",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 23924,
                                "src": "10491:6:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_IERC20_$23924_$",
                                  "typeString": "type(contract IERC20)"
                                }
                              },
                              "id": 20542,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "10491:10:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IERC20_$23924",
                                "typeString": "contract IERC20"
                              }
                            },
                            "id": 20543,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "balanceOf",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 23863,
                            "src": "10491:20:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                              "typeString": "function (address) view external returns (uint256)"
                            }
                          },
                          "id": 20548,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "10491:35:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": ">=",
                        "rightExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 20549,
                            "name": "amt",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20244,
                            "src": "10530:3:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                              "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                            }
                          },
                          "id": 20550,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "amtLPWithdraw",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 20226,
                          "src": "10530:17:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "10491:56:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      ],
                      "id": 20539,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        -18,
                        -18
                      ],
                      "referencedDeclaration": -18,
                      "src": "10483:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
                        "typeString": "function (bool) pure"
                      }
                    },
                    "id": 20552,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10483:65:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20553,
                  "nodeType": "ExpressionStatement",
                  "src": "10483:65:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "id": 20554,
                      "name": "doRefundETH",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15546,
                      "src": "10581:11:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
                        "typeString": "function ()"
                      }
                    },
                    "id": 20555,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10581:13:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20556,
                  "nodeType": "ExpressionStatement",
                  "src": "10581:13:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20558,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20240,
                        "src": "10609:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20557,
                      "name": "doRefund",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15498,
                      "src": "10600:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
                        "typeString": "function (address)"
                      }
                    },
                    "id": 20559,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10600:16:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20560,
                  "nodeType": "ExpressionStatement",
                  "src": "10600:16:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20562,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20242,
                        "src": "10631:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20561,
                      "name": "doRefund",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15498,
                      "src": "10622:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
                        "typeString": "function (address)"
                      }
                    },
                    "id": 20563,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10622:16:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20564,
                  "nodeType": "ExpressionStatement",
                  "src": "10622:16:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20566,
                        "name": "lp",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20246,
                        "src": "10653:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20565,
                      "name": "doRefund",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15498,
                      "src": "10644:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
                        "typeString": "function (address)"
                      }
                    },
                    "id": 20567,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10644:12:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20568,
                  "nodeType": "ExpressionStatement",
                  "src": "10644:12:45"
                }
              ]
            },
            "documentation": {
              "id": 20238,
              "nodeType": "StructuredDocumentation",
              "src": "8095:199:45",
              "text": "@dev Remove liquidity from Uniswap pool\n @param tokenA Token A for the pair\n @param tokenB Token B for the pair\n @param amt Amounts of tokens to take out, withdraw, repay, and get."
            },
            "id": 20570,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "removeLiquidityInternal",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 20247,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 20240,
                  "mutability": "mutable",
                  "name": "tokenA",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20570,
                  "src": "8335:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20239,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "8335:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20242,
                  "mutability": "mutable",
                  "name": "tokenB",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20570,
                  "src": "8355:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20241,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "8355:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20244,
                  "mutability": "mutable",
                  "name": "amt",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20570,
                  "src": "8375:25:45",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                    "typeString": "struct UniswapV2SpellV1.RepayAmounts"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 20243,
                    "name": "RepayAmounts",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 20237,
                    "src": "8375:12:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RepayAmounts_$20237_storage_ptr",
                      "typeString": "struct UniswapV2SpellV1.RepayAmounts"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20246,
                  "mutability": "mutable",
                  "name": "lp",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20570,
                  "src": "8406:10:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20245,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "8406:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "8329:91:45"
            },
            "returnParameters": {
              "id": 20248,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "8430:0:45"
            },
            "scope": 20794,
            "src": "8297:2364:45",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "internal"
          },
          {
            "body": {
              "id": 20600,
              "nodeType": "Block",
              "src": "11028:213:45",
              "statements": [
                {
                  "assignments": [
                    20581
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20581,
                      "mutability": "mutable",
                      "name": "lp",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20600,
                      "src": "11034:10:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 20580,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "11034:7:45",
                        "stateMutability": "nonpayable",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20586,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20583,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20573,
                        "src": "11065:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20584,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20575,
                        "src": "11073:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20582,
                      "name": "getAndApprovePair",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19587,
                      "src": "11047:17:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$_t_address_$",
                        "typeString": "function (address,address) returns (address)"
                      }
                    },
                    "id": 20585,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "11047:33:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "11034:46:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20588,
                        "name": "lp",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20581,
                        "src": "11134:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 20589,
                          "name": "amt",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20577,
                          "src": "11138:3:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                            "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                          }
                        },
                        "id": 20590,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "amtLPTake",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20224,
                        "src": "11138:13:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 20587,
                      "name": "doTakeCollateral",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15690,
                      "src": "11117:16:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 20591,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "11117:35:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20592,
                  "nodeType": "ExpressionStatement",
                  "src": "11117:35:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20594,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20573,
                        "src": "11212:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20595,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20575,
                        "src": "11220:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20596,
                        "name": "amt",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20577,
                        "src": "11228:3:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                          "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20597,
                        "name": "lp",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20581,
                        "src": "11233:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                          "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20593,
                      "name": "removeLiquidityInternal",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20570,
                      "src": "11188:23:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_RepayAmounts_$20237_calldata_ptr_$_t_address_$returns$__$",
                        "typeString": "function (address,address,struct UniswapV2SpellV1.RepayAmounts calldata,address)"
                      }
                    },
                    "id": 20598,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "11188:48:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20599,
                  "nodeType": "ExpressionStatement",
                  "src": "11188:48:45"
                }
              ]
            },
            "documentation": {
              "id": 20571,
              "nodeType": "StructuredDocumentation",
              "src": "10665:245:45",
              "text": "@dev Remove liquidity from Uniswap pool, with no staking rewards (use WERC20 wrapper)\n @param tokenA Token A for the pair\n @param tokenB Token B for the pair\n @param amt Amounts of tokens to take out, withdraw, repay, and get."
            },
            "functionSelector": "1387d96d",
            "id": 20601,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "removeLiquidityWERC20",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 20578,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 20573,
                  "mutability": "mutable",
                  "name": "tokenA",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20601,
                  "src": "10949:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20572,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "10949:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20575,
                  "mutability": "mutable",
                  "name": "tokenB",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20601,
                  "src": "10969:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20574,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "10969:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20577,
                  "mutability": "mutable",
                  "name": "amt",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20601,
                  "src": "10989:25:45",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                    "typeString": "struct UniswapV2SpellV1.RepayAmounts"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 20576,
                    "name": "RepayAmounts",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 20237,
                    "src": "10989:12:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RepayAmounts_$20237_storage_ptr",
                      "typeString": "struct UniswapV2SpellV1.RepayAmounts"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "10943:75:45"
            },
            "returnParameters": {
              "id": 20579,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "11028:0:45"
            },
            "scope": 20794,
            "src": "10913:328:45",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": {
              "id": 20684,
              "nodeType": "Block",
              "src": "11615:646:45",
              "statements": [
                {
                  "assignments": [
                    20614
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20614,
                      "mutability": "mutable",
                      "name": "lp",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20684,
                      "src": "11621:10:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 20613,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "11621:7:45",
                        "stateMutability": "nonpayable",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20619,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20616,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20604,
                        "src": "11652:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20617,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20606,
                        "src": "11660:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20615,
                      "name": "getAndApprovePair",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19587,
                      "src": "11634:17:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$_t_address_$",
                        "typeString": "function (address,address) returns (address)"
                      }
                    },
                    "id": 20618,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "11634:33:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "11621:46:45"
                },
                {
                  "assignments": [
                    null,
                    20621,
                    20623,
                    null
                  ],
                  "declarations": [
                    null,
                    {
                      "constant": false,
                      "id": 20621,
                      "mutability": "mutable",
                      "name": "collToken",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20684,
                      "src": "11676:17:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 20620,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "11676:7:45",
                        "stateMutability": "nonpayable",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    },
                    {
                      "constant": false,
                      "id": 20623,
                      "mutability": "mutable",
                      "name": "collId",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20684,
                      "src": "11695:11:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20622,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "11695:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    },
                    null
                  ],
                  "id": 20627,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 20624,
                        "name": "bank",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15333,
                        "src": "11712:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IBank_$24391",
                          "typeString": "contract IBank"
                        }
                      },
                      "id": 20625,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getCurrentPositionInfo",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24383,
                      "src": "11712:27:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$__$returns$_t_address_$_t_address_$_t_uint256_$_t_uint256_$",
                        "typeString": "function () view external returns (address,address,uint256,uint256)"
                      }
                    },
                    "id": 20626,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "11712:29:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$_t_address_$_t_address_$_t_uint256_$_t_uint256_$",
                      "typeString": "tuple(address,address,uint256,uint256)"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "11673:68:45"
                },
                {
                  "assignments": [
                    20629
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20629,
                      "mutability": "mutable",
                      "name": "reward",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20684,
                      "src": "11747:14:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 20628,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "11747:7:45",
                        "stateMutability": "nonpayable",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20635,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20631,
                            "name": "wstaking",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20610,
                            "src": "11781:8:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 20630,
                          "name": "IWStakingRewards",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 25843,
                          "src": "11764:16:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                            "typeString": "type(contract IWStakingRewards)"
                          }
                        },
                        "id": 20632,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "11764:26:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                          "typeString": "contract IWStakingRewards"
                        }
                      },
                      "id": 20633,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "reward",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 25842,
                      "src": "11764:33:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_nonpayable$__$returns$_t_address_$",
                        "typeString": "function () external returns (address)"
                      }
                    },
                    "id": 20634,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "11764:35:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "11747:52:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 20644,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 20641,
                              "name": "collId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20623,
                              "src": "11891:6:45",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "arguments": [
                                {
                                  "argumentTypes": null,
                                  "id": 20638,
                                  "name": "collToken",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20621,
                                  "src": "11861:9:45",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                ],
                                "id": 20637,
                                "name": "IWStakingRewards",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 25843,
                                "src": "11844:16:45",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                                  "typeString": "type(contract IWStakingRewards)"
                                }
                              },
                              "id": 20639,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "11844:27:45",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                                "typeString": "contract IWStakingRewards"
                              }
                            },
                            "id": 20640,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "getUnderlyingToken",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 25802,
                            "src": "11844:46:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_address_$",
                              "typeString": "function (uint256) view external returns (address)"
                            }
                          },
                          "id": 20642,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "11844:54:45",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "argumentTypes": null,
                          "id": 20643,
                          "name": "lp",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20614,
                          "src": "11902:2:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "11844:60:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "696e636f727265637420756e6465726c79696e67",
                        "id": 20645,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "11906:22:45",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_ce16acb2587e4e9fe6a6da15fb74270074dc10798c229be13e31273addbbac1e",
                          "typeString": "literal_string \"incorrect underlying\""
                        },
                        "value": "incorrect underlying"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_ce16acb2587e4e9fe6a6da15fb74270074dc10798c229be13e31273addbbac1e",
                          "typeString": "literal_string \"incorrect underlying\""
                        }
                      ],
                      "id": 20636,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        -18,
                        -18
                      ],
                      "referencedDeclaration": -18,
                      "src": "11836:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 20646,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "11836:93:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20647,
                  "nodeType": "ExpressionStatement",
                  "src": "11836:93:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 20651,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "id": 20649,
                          "name": "collToken",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20621,
                          "src": "11943:9:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "argumentTypes": null,
                          "id": 20650,
                          "name": "wstaking",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20610,
                          "src": "11956:8:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "11943:21:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "636f6c6c61746572616c20746f6b656e202620777374616b696e67206d69736d617463686564",
                        "id": 20652,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "11966:40:45",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_1439dfb5b355687e7be7c0ce18d37bed21515d4de64abbce8c5ae0e4f8e6447c",
                          "typeString": "literal_string \"collateral token & wstaking mismatched\""
                        },
                        "value": "collateral token & wstaking mismatched"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_1439dfb5b355687e7be7c0ce18d37bed21515d4de64abbce8c5ae0e4f8e6447c",
                          "typeString": "literal_string \"collateral token & wstaking mismatched\""
                        }
                      ],
                      "id": 20648,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        -18,
                        -18
                      ],
                      "referencedDeclaration": -18,
                      "src": "11935:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 20653,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "11935:72:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20654,
                  "nodeType": "ExpressionStatement",
                  "src": "11935:72:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20658,
                        "name": "wstaking",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20610,
                        "src": "12033:8:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20659,
                        "name": "collId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20623,
                        "src": "12043:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 20660,
                          "name": "amt",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20608,
                          "src": "12051:3:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                            "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                          }
                        },
                        "id": 20661,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "amtLPTake",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20224,
                        "src": "12051:13:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 20655,
                        "name": "bank",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15333,
                        "src": "12013:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IBank_$24391",
                          "typeString": "contract IBank"
                        }
                      },
                      "id": 20657,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "takeCollateral",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24344,
                      "src": "12013:19:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256,uint256) external"
                      }
                    },
                    "id": 20662,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12013:52:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20663,
                  "nodeType": "ExpressionStatement",
                  "src": "12013:52:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20668,
                        "name": "collId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20623,
                        "src": "12103:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 20669,
                          "name": "amt",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20608,
                          "src": "12111:3:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                            "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                          }
                        },
                        "id": 20670,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "amtLPTake",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20224,
                        "src": "12111:13:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20665,
                            "name": "wstaking",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20610,
                            "src": "12088:8:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 20664,
                          "name": "IWStakingRewards",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 25843,
                          "src": "12071:16:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                            "typeString": "type(contract IWStakingRewards)"
                          }
                        },
                        "id": 20666,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "12071:26:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                          "typeString": "contract IWStakingRewards"
                        }
                      },
                      "id": 20667,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "burn",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 25837,
                      "src": "12071:31:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$returns$_t_uint256_$",
                        "typeString": "function (uint256,uint256) external returns (uint256)"
                      }
                    },
                    "id": 20671,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12071:54:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 20672,
                  "nodeType": "ExpressionStatement",
                  "src": "12071:54:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20674,
                        "name": "tokenA",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20604,
                        "src": "12185:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20675,
                        "name": "tokenB",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20606,
                        "src": "12193:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20676,
                        "name": "amt",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20608,
                        "src": "12201:3:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                          "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20677,
                        "name": "lp",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20614,
                        "src": "12206:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                          "typeString": "struct UniswapV2SpellV1.RepayAmounts calldata"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20673,
                      "name": "removeLiquidityInternal",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20570,
                      "src": "12161:23:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_RepayAmounts_$20237_calldata_ptr_$_t_address_$returns$__$",
                        "typeString": "function (address,address,struct UniswapV2SpellV1.RepayAmounts calldata,address)"
                      }
                    },
                    "id": 20678,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12161:48:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20679,
                  "nodeType": "ExpressionStatement",
                  "src": "12161:48:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20681,
                        "name": "reward",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20629,
                        "src": "12249:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20680,
                      "name": "doRefund",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15498,
                      "src": "12240:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
                        "typeString": "function (address)"
                      }
                    },
                    "id": 20682,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12240:16:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20683,
                  "nodeType": "ExpressionStatement",
                  "src": "12240:16:45"
                }
              ]
            },
            "documentation": {
              "id": 20602,
              "nodeType": "StructuredDocumentation",
              "src": "11245:221:45",
              "text": "@dev Remove liquidity from Uniswap pool, from staking rewards\n @param tokenA Token A for the pair\n @param tokenB Token B for the pair\n @param amt Amounts of tokens to take out, withdraw, repay, and get."
            },
            "functionSelector": "b2cfde44",
            "id": 20685,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "removeLiquidityWStakingRewards",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 20611,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 20604,
                  "mutability": "mutable",
                  "name": "tokenA",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20685,
                  "src": "11514:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20603,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "11514:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20606,
                  "mutability": "mutable",
                  "name": "tokenB",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20685,
                  "src": "11534:14:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20605,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "11534:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20608,
                  "mutability": "mutable",
                  "name": "amt",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20685,
                  "src": "11554:25:45",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RepayAmounts_$20237_calldata_ptr",
                    "typeString": "struct UniswapV2SpellV1.RepayAmounts"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 20607,
                    "name": "RepayAmounts",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 20237,
                    "src": "11554:12:45",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RepayAmounts_$20237_storage_ptr",
                      "typeString": "struct UniswapV2SpellV1.RepayAmounts"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 20610,
                  "mutability": "mutable",
                  "name": "wstaking",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20685,
                  "src": "11585:16:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20609,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "11585:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "11508:97:45"
            },
            "returnParameters": {
              "id": 20612,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "11615:0:45"
            },
            "scope": 20794,
            "src": "11469:792:45",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": {
              "id": 20792,
              "nodeType": "Block",
              "src": "12447:754:45",
              "statements": [
                {
                  "assignments": [
                    20692
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20692,
                      "mutability": "mutable",
                      "name": "reward",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20792,
                      "src": "12453:14:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 20691,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "12453:7:45",
                        "stateMutability": "nonpayable",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20698,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20694,
                            "name": "wstaking",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20688,
                            "src": "12487:8:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 20693,
                          "name": "IWStakingRewards",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 25843,
                          "src": "12470:16:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                            "typeString": "type(contract IWStakingRewards)"
                          }
                        },
                        "id": 20695,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "12470:26:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                          "typeString": "contract IWStakingRewards"
                        }
                      },
                      "id": 20696,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "reward",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 25842,
                      "src": "12470:33:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_nonpayable$__$returns$_t_address_$",
                        "typeString": "function () external returns (address)"
                      }
                    },
                    "id": 20697,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12470:35:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "12453:52:45"
                },
                {
                  "assignments": [
                    null,
                    20700,
                    20702,
                    null
                  ],
                  "declarations": [
                    null,
                    {
                      "constant": false,
                      "id": 20700,
                      "mutability": "mutable",
                      "name": "collToken",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20792,
                      "src": "12514:17:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 20699,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "12514:7:45",
                        "stateMutability": "nonpayable",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    },
                    {
                      "constant": false,
                      "id": 20702,
                      "mutability": "mutable",
                      "name": "collId",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20792,
                      "src": "12533:11:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20701,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "12533:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    },
                    null
                  ],
                  "id": 20706,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 20703,
                        "name": "bank",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15333,
                        "src": "12550:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IBank_$24391",
                          "typeString": "contract IBank"
                        }
                      },
                      "id": 20704,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getCurrentPositionInfo",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24383,
                      "src": "12550:27:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$__$returns$_t_address_$_t_address_$_t_uint256_$_t_uint256_$",
                        "typeString": "function () view external returns (address,address,uint256,uint256)"
                      }
                    },
                    "id": 20705,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12550:29:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$_t_address_$_t_address_$_t_uint256_$_t_uint256_$",
                      "typeString": "tuple(address,address,uint256,uint256)"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "12511:68:45"
                },
                {
                  "assignments": [
                    20708
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20708,
                      "mutability": "mutable",
                      "name": "lp",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20792,
                      "src": "12585:10:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 20707,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "12585:7:45",
                        "stateMutability": "nonpayable",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20715,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20713,
                        "name": "collId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20702,
                        "src": "12644:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20710,
                            "name": "wstaking",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20688,
                            "src": "12615:8:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 20709,
                          "name": "IWStakingRewards",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 25843,
                          "src": "12598:16:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                            "typeString": "type(contract IWStakingRewards)"
                          }
                        },
                        "id": 20711,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "12598:26:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                          "typeString": "contract IWStakingRewards"
                        }
                      },
                      "id": 20712,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getUnderlyingToken",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 25802,
                      "src": "12598:45:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_address_$",
                        "typeString": "function (uint256) view external returns (address)"
                      }
                    },
                    "id": 20714,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12598:53:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "12585:66:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 20717,
                          "name": "whitelistedLpTokens",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20806,
                          "src": "12665:19:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
                            "typeString": "mapping(address => bool)"
                          }
                        },
                        "id": 20719,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 20718,
                          "name": "lp",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20708,
                          "src": "12685:2:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "12665:23:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "6c7020746f6b656e206e6f742077686974656c6973746564",
                        "id": 20720,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "12690:26:45",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_76fd3bc08be88f328f09320fa313b292032a5afbcfc99b8a4713537b5c013f5e",
                          "typeString": "literal_string \"lp token not whitelisted\""
                        },
                        "value": "lp token not whitelisted"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_76fd3bc08be88f328f09320fa313b292032a5afbcfc99b8a4713537b5c013f5e",
                          "typeString": "literal_string \"lp token not whitelisted\""
                        }
                      ],
                      "id": 20716,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        -18,
                        -18
                      ],
                      "referencedDeclaration": -18,
                      "src": "12657:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 20721,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12657:60:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20722,
                  "nodeType": "ExpressionStatement",
                  "src": "12657:60:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 20726,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "id": 20724,
                          "name": "collToken",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20700,
                          "src": "12731:9:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "argumentTypes": null,
                          "id": 20725,
                          "name": "wstaking",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20688,
                          "src": "12744:8:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "12731:21:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "636f6c6c61746572616c20746f6b656e202620777374616b696e67206d69736d617463686564",
                        "id": 20727,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "12754:40:45",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_1439dfb5b355687e7be7c0ce18d37bed21515d4de64abbce8c5ae0e4f8e6447c",
                          "typeString": "literal_string \"collateral token & wstaking mismatched\""
                        },
                        "value": "collateral token & wstaking mismatched"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_1439dfb5b355687e7be7c0ce18d37bed21515d4de64abbce8c5ae0e4f8e6447c",
                          "typeString": "literal_string \"collateral token & wstaking mismatched\""
                        }
                      ],
                      "id": 20723,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        -18,
                        -18
                      ],
                      "referencedDeclaration": -18,
                      "src": "12723:7:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 20728,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12723:72:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20729,
                  "nodeType": "ExpressionStatement",
                  "src": "12723:72:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20733,
                        "name": "wstaking",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20688,
                        "src": "12852:8:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20734,
                        "name": "collId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20702,
                        "src": "12862:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20738,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "UnaryOperation",
                            "operator": "-",
                            "prefix": true,
                            "src": "12875:2:45",
                            "subExpression": {
                              "argumentTypes": null,
                              "hexValue": "31",
                              "id": 20737,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "12876:1:45",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_1_by_1",
                                "typeString": "int_const 1"
                              },
                              "value": "1"
                            },
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_minus_1_by_1",
                              "typeString": "int_const -1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_rational_minus_1_by_1",
                              "typeString": "int_const -1"
                            }
                          ],
                          "id": 20736,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "12870:4:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint256_$",
                            "typeString": "type(uint256)"
                          },
                          "typeName": {
                            "id": 20735,
                            "name": "uint",
                            "nodeType": "ElementaryTypeName",
                            "src": "12870:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": null,
                              "typeString": null
                            }
                          }
                        },
                        "id": 20739,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "12870:8:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 20730,
                        "name": "bank",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15333,
                        "src": "12832:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IBank_$24391",
                          "typeString": "contract IBank"
                        }
                      },
                      "id": 20732,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "takeCollateral",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24344,
                      "src": "12832:19:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256,uint256) external"
                      }
                    },
                    "id": 20740,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12832:47:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20741,
                  "nodeType": "ExpressionStatement",
                  "src": "12832:47:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20746,
                        "name": "collId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20702,
                        "src": "12917:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20750,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "UnaryOperation",
                            "operator": "-",
                            "prefix": true,
                            "src": "12930:2:45",
                            "subExpression": {
                              "argumentTypes": null,
                              "hexValue": "31",
                              "id": 20749,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "12931:1:45",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_1_by_1",
                                "typeString": "int_const 1"
                              },
                              "value": "1"
                            },
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_minus_1_by_1",
                              "typeString": "int_const -1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_rational_minus_1_by_1",
                              "typeString": "int_const -1"
                            }
                          ],
                          "id": 20748,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "12925:4:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint256_$",
                            "typeString": "type(uint256)"
                          },
                          "typeName": {
                            "id": 20747,
                            "name": "uint",
                            "nodeType": "ElementaryTypeName",
                            "src": "12925:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": null,
                              "typeString": null
                            }
                          }
                        },
                        "id": 20751,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "12925:8:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20743,
                            "name": "wstaking",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20688,
                            "src": "12902:8:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 20742,
                          "name": "IWStakingRewards",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 25843,
                          "src": "12885:16:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                            "typeString": "type(contract IWStakingRewards)"
                          }
                        },
                        "id": 20744,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "12885:26:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                          "typeString": "contract IWStakingRewards"
                        }
                      },
                      "id": 20745,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "burn",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 25837,
                      "src": "12885:31:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$returns$_t_uint256_$",
                        "typeString": "function (uint256,uint256) external returns (uint256)"
                      }
                    },
                    "id": 20752,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12885:49:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 20753,
                  "nodeType": "ExpressionStatement",
                  "src": "12885:49:45"
                },
                {
                  "assignments": [
                    20755
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20755,
                      "mutability": "mutable",
                      "name": "amount",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20792,
                      "src": "12966:11:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20754,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "12966:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20765,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20762,
                            "name": "this",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": -28,
                            "src": "13009:4:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                              "typeString": "contract UniswapV2SpellV1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_contract$_UniswapV2SpellV1_$20794",
                              "typeString": "contract UniswapV2SpellV1"
                            }
                          ],
                          "id": 20761,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "13001:7:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_address_$",
                            "typeString": "type(address)"
                          },
                          "typeName": {
                            "id": 20760,
                            "name": "address",
                            "nodeType": "ElementaryTypeName",
                            "src": "13001:7:45",
                            "typeDescriptions": {
                              "typeIdentifier": null,
                              "typeString": null
                            }
                          }
                        },
                        "id": 20763,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "13001:13:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20757,
                            "name": "lp",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20708,
                            "src": "12987:2:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 20756,
                          "name": "IERC20",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 23924,
                          "src": "12980:6:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_IERC20_$23924_$",
                            "typeString": "type(contract IERC20)"
                          }
                        },
                        "id": 20758,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "12980:10:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IERC20_$23924",
                          "typeString": "contract IERC20"
                        }
                      },
                      "id": 20759,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "balanceOf",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 23863,
                      "src": "12980:20:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$",
                        "typeString": "function (address) view external returns (uint256)"
                      }
                    },
                    "id": 20764,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12980:35:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "12966:49:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20767,
                        "name": "lp",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20708,
                        "src": "13035:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20768,
                        "name": "wstaking",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20688,
                        "src": "13039:8:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20766,
                      "name": "ensureApprove",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15423,
                      "src": "13021:13:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$",
                        "typeString": "function (address,address)"
                      }
                    },
                    "id": 20769,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "13021:27:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20770,
                  "nodeType": "ExpressionStatement",
                  "src": "13021:27:45"
                },
                {
                  "assignments": [
                    20772
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 20772,
                      "mutability": "mutable",
                      "name": "id",
                      "nodeType": "VariableDeclaration",
                      "overrides": null,
                      "scope": 20792,
                      "src": "13054:7:45",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 20771,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "13054:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 20779,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20777,
                        "name": "amount",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20755,
                        "src": "13096:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 20774,
                            "name": "wstaking",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20688,
                            "src": "13081:8:45",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          ],
                          "id": 20773,
                          "name": "IWStakingRewards",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 25843,
                          "src": "13064:16:45",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_IWStakingRewards_$25843_$",
                            "typeString": "type(contract IWStakingRewards)"
                          }
                        },
                        "id": 20775,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "13064:26:45",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IWStakingRewards_$25843",
                          "typeString": "contract IWStakingRewards"
                        }
                      },
                      "id": 20776,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "mint",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 25827,
                      "src": "13064:31:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$_t_uint256_$",
                        "typeString": "function (uint256) external returns (uint256)"
                      }
                    },
                    "id": 20778,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "13064:39:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "13054:49:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20783,
                        "name": "wstaking",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20688,
                        "src": "13128:8:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20784,
                        "name": "id",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20772,
                        "src": "13138:2:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 20785,
                        "name": "amount",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20755,
                        "src": "13142:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 20780,
                        "name": "bank",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15333,
                        "src": "13109:4:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_IBank_$24391",
                          "typeString": "contract IBank"
                        }
                      },
                      "id": 20782,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "putCollateral",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24334,
                      "src": "13109:18:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256,uint256) external"
                      }
                    },
                    "id": 20786,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "13109:40:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20787,
                  "nodeType": "ExpressionStatement",
                  "src": "13109:40:45"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 20789,
                        "name": "reward",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20692,
                        "src": "13189:6:45",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 20788,
                      "name": "doRefund",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15498,
                      "src": "13180:8:45",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
                        "typeString": "function (address)"
                      }
                    },
                    "id": 20790,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "13180:16:45",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 20791,
                  "nodeType": "ExpressionStatement",
                  "src": "13180:16:45"
                }
              ]
            },
            "documentation": {
              "id": 20686,
              "nodeType": "StructuredDocumentation",
              "src": "12265:120:45",
              "text": "@dev Harvest staking reward tokens to in-exec position's owner\n @param wstaking Wrapped staking rewards address"
            },
            "functionSelector": "45174f18",
            "id": 20793,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "harvestWStakingRewards",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 20689,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 20688,
                  "mutability": "mutable",
                  "name": "wstaking",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 20793,
                  "src": "12420:16:45",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 20687,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "12420:7:45",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "12419:18:45"
            },
            "returnParameters": {
              "id": 20690,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "12447:0:45"
            },
            "scope": 20794,
            "src": "12388:813:45",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "scope": 20795,
        "src": "517:12686:45"
      }
    ],
    "src": "33:13171:45"
  },
  "bytecode": "6101206040523480156200001257600080fd5b5060405162004ecb38038062004ecb833981016040819052620000359162000738565b8282826001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200007157600080fd5b505afa15801562000086573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000ac9190620006f7565b828282620000c16301ffc9a760e01b62000229565b620000d3630271189760e51b62000229565b6001600160601b0319606084811b821660805283811b821660a05282901b1660c05262000101818462000284565b60405163a22cb46560e01b81526001600160a01b0383169063a22cb4659062000132908690600190600401620007f0565b600060405180830381600087803b1580156200014d57600080fd5b505af115801562000162573d6000803e3d6000fd5b50505050505050620001796200030e60201b60201c565b505050806001600160a01b0316610100816001600160a01b031660601b81525050806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620001d457600080fd5b505afa158015620001e9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200020f9190620006f7565b60601b6001600160601b03191660e0525062000a4b915050565b6001600160e01b031980821614156200025f5760405162461bcd60e51b8152600401620002569062000859565b60405180910390fd5b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b6001600160a01b0380831660009081526041602090815260408083209385168352929052205460ff166200030a57620002d981600019846001600160a01b03166200040060201b620018ee179092919060201c565b6001600160a01b038083166000908152604160209081526040808320938516835292905220805460ff191660011790555b5050565b604254610100900460ff16806200032a57506200032a6200050e565b8062000339575060425460ff16155b620003585760405162461bcd60e51b81526004016200025690620008d6565b604254610100900460ff1615801562000384576042805460ff1961ff0019909116610100171660011790555b6042805462010000600160b01b0319163362010000810291909117909155604380546001600160a01b03191690556040517fbce074c8369e26e70e1ae2f14fc944da352cfe6f52e2de9572f0c9942a24b7fc91620003e291620007c2565b60405180910390a18015620003fd576042805461ff00191690555b50565b8015806200048f5750604051636eb1769f60e11b81526001600160a01b0384169063dd62ed3e90620004399030908690600401620007d6565b60206040518083038186803b1580156200045257600080fd5b505afa15801562000467573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200048d91906200078b565b155b620004ae5760405162461bcd60e51b81526004016200025690620009a5565b620005098363095ea7b360e01b8484604051602401620004d09291906200080b565b60408051808303601f190181529190526020810180516001600160e01b0319939093166001600160e01b03938416179052906200052c16565b505050565b60006200052630620005c860201b620019ed1760201c565b15905090565b606062000588826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316620005ce60201b620019f3179092919060201c565b805190915015620005095780806020019051810190620005a9919062000716565b620005095760405162461bcd60e51b815260040162000256906200095b565b3b151590565b6060620005df8484600085620005e9565b90505b9392505050565b6060824710156200060e5760405162461bcd60e51b8152600401620002569062000890565b6200061985620005c8565b620006385760405162461bcd60e51b8152600401620002569062000924565b60006060866001600160a01b03168587604051620006579190620007a4565b60006040518083038185875af1925050503d806000811462000696576040519150601f19603f3d011682016040523d82523d6000602084013e6200069b565b606091505b509092509050620006ae828286620006b9565b979650505050505050565b60608315620006ca575081620005e2565b825115620006db5782518084602001fd5b8160405162461bcd60e51b815260040162000256919062000824565b60006020828403121562000709578081fd5b8151620005e28162000a35565b60006020828403121562000728578081fd5b81518015158114620005e2578182fd5b6000806000606084860312156200074d578182fd5b83516200075a8162000a35565b60208501519093506200076d8162000a35565b6040850151909250620007808162000a35565b809150509250925092565b6000602082840312156200079d578081fd5b5051919050565b60008251620007b881846020870162000a02565b9190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b039290921682521515602082015260400190565b6001600160a01b03929092168252602082015260400190565b60006020825282518060208401526200084581604085016020870162000a02565b601f01601f19169190910160400192915050565b6020808252601c908201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604082015260600190565b60208082526026908201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6040820152651c8818d85b1b60d21b606082015260800190565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252601d908201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b60208082526036908201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60408201527f20746f206e6f6e2d7a65726f20616c6c6f77616e636500000000000000000000606082015260800190565b60005b8381101562000a1f57818101518382015260200162000a05565b8381111562000a2f576000848401525b50505050565b6001600160a01b0381168114620003fd57600080fd5b60805160601c60a05160601c60c05160601c60e05160601c6101005160601c61435f62000b6c60003980610572528061059c52806105c652806118cc5280611f6d528061209e52806121cb52806129dd5280612ba15250806104bd5280610ec952508061014952806106495280612d7a5280612e2052806131eb525080610b275280611af85280611b6c5280612c4a5280612c855280612d335250806106e7528061087d5280610a935280610b715280610ba65280610da6528061103c52806111cd52806113ee528061148e528061150352806116bf5280611a1e5280611aca5280611c185280611cd95280611d865280611e33528061257a5280612d035280612e8b5280613152528061318d528061327752806132cb525061435f6000f3fe6080604052600436106101395760003560e01c8063bc197c81116100ab578063e58bb6391161006f578063e58bb6391461036a578063ee42c6f41461037f578063f235757f1461039f578063f23a6e61146103bf578063f4b16045146103df578063f887ea40146103ff57610191565b8063bc197c81146102ed578063c45a01551461031a578063cc9b18801461032f578063d57cdec514610342578063e3056a341461035557610191565b806345174f18116100fd57806345174f18146102435780634bab09f6146102635780635741229c1461028357806369454b861461029857806376cdb03b146102b8578063b2cfde44146102cd57610191565b806301ffc9a7146101965780630c340a24146101cc5780631387d96d146101ee5780632185059f1461020e5780633fc8cef31461022e57610191565b3661019157336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461018f5760405162461bcd60e51b815260040161018690614075565b60405180910390fd5b005b600080fd5b3480156101a257600080fd5b506101b66101b1366004613b3e565b610414565b6040516101c39190613d8d565b60405180910390f35b3480156101d857600080fd5b506101e1610437565b6040516101c39190613c81565b3480156101fa57600080fd5b5061018f6102093660046138b7565b61044c565b34801561021a57600080fd5b506101e1610229366004613720565b610477565b34801561023a57600080fd5b506101e1610647565b34801561024f57600080fd5b5061018f61025e3660046136e8565b61066b565b34801561026f57600080fd5b506101b661027e3660046136e8565b610b10565b34801561028f57600080fd5b506101e1610b25565b3480156102a457600080fd5b506101e16102b3366004613720565b610b49565b3480156102c457600080fd5b506101e1610b6f565b3480156102d957600080fd5b5061018f6102e83660046138f6565b610b93565b3480156102f957600080fd5b5061030d610308366004613758565b610eb3565b6040516101c39190613d98565b34801561032657600080fd5b506101e1610ec7565b61018f61033d366004613813565b610eeb565b61018f61035036600461385b565b610fa4565b34801561036157600080fd5b506101e161159e565b34801561037657600080fd5b5061018f6115ad565b34801561038b57600080fd5b5061018f61039a366004613a08565b61163d565b3480156103ab57600080fd5b5061018f6103ba3660046136e8565b611812565b3480156103cb57600080fd5b5061030d6103da36600461398e565b611898565b3480156103eb57600080fd5b506101b66103fa366004613720565b6118aa565b34801561040b57600080fd5b506101e16118ca565b6001600160e01b0319811660009081526020819052604090205460ff165b919050565b6042546201000090046001600160a01b031681565b60006104588484610477565b9050610465818335611a0c565b61047184848484611bdc565b50505050565b6001600160a01b03808316600090815260856020908152604080832085851684529091528120549091168061063e5760405163e6a4390560e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e6a43905906104f49087908790600401613c95565b60206040518083038186803b15801561050c57600080fd5b505afa158015610520573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105449190613704565b90506001600160a01b03811661056c5760405162461bcd60e51b815260040161018690614019565b610596847f0000000000000000000000000000000000000000000000000000000000000000612477565b6105c0837f0000000000000000000000000000000000000000000000000000000000000000612477565b6105ea817f0000000000000000000000000000000000000000000000000000000000000000612477565b6001600160a01b0380851660008181526085602081815260408084208987168552825280842080549688166001600160a01b0319978816811790915592825280842094845293905291902080549092161790555b90505b92915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000816001600160a01b031663228cb7336040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156106a857600080fd5b505af11580156106bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e09190613704565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f70aedd96040518163ffffffff1660e01b815260040160806040518083038186803b15801561073e57600080fd5b505afa158015610752573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107769190613947565b5092509250506000846001600160a01b031663a4775772836040518263ffffffff1660e01b81526004016107aa9190614214565b60206040518083038186803b1580156107c257600080fd5b505afa1580156107d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107fa9190613704565b6001600160a01b03811660009081526084602052604090205490915060ff166108355760405162461bcd60e51b81526004016101869061403e565b846001600160a01b0316836001600160a01b0316146108665760405162461bcd60e51b815260040161018690613e0b565b604051630d1d697560e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906368eb4ba8906108b8908890869060001990600401613d6c565b600060405180830381600087803b1580156108d257600080fd5b505af11580156108e6573d6000803e3d6000fd5b505060405163b390c0ab60e01b81526001600160a01b038816925063b390c0ab915061091a90859060001990600401614270565b602060405180830381600087803b15801561093457600080fd5b505af1158015610948573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096c9190613bba565b506040516370a0823160e01b81526000906001600160a01b038316906370a082319061099c903090600401613c81565b60206040518083038186803b1580156109b457600080fd5b505afa1580156109c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ec9190613bba565b90506109f88287612477565b60405163140e25ad60e31b81526000906001600160a01b0388169063a0712d6890610a27908590600401614214565b602060405180830381600087803b158015610a4157600080fd5b505af1158015610a55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a799190613bba565b60405163314568d960e01b81529091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063314568d990610acc908a9085908790600401613d6c565b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050610b07866124ee565b50505050505050565b60846020526000908152604090205460ff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b60856020908152600092835260408084209091529082529020546001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610b9f8585610477565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f70aedd96040518163ffffffff1660e01b815260040160806040518083038186803b158015610bfd57600080fd5b505afa158015610c11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c359190613947565b5092509250506000846001600160a01b031663228cb7336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610c7857600080fd5b505af1158015610c8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cb09190613704565b9050836001600160a01b0316836001600160a01b031663a4775772846040518263ffffffff1660e01b8152600401610ce89190614214565b60206040518083038186803b158015610d0057600080fd5b505afa158015610d14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d389190613704565b6001600160a01b031614610d5e5760405162461bcd60e51b815260040161018690614146565b846001600160a01b0316836001600160a01b031614610d8f5760405162461bcd60e51b815260040161018690613e0b565b604051630d1d697560e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906368eb4ba890610de090889086908b3590600401613d6c565b600060405180830381600087803b158015610dfa57600080fd5b505af1158015610e0e573d6000803e3d6000fd5b505060405163b390c0ab60e01b81526001600160a01b038816925063b390c0ab9150610e419085908a3590600401614270565b602060405180830381600087803b158015610e5b57600080fd5b505af1158015610e6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e939190613bba565b50610ea088888887611bdc565b610ea9816124ee565b5050505050505050565b63bc197c8160e01b98975050505050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610ef78484610477565b9050610f058484848461261a565b610f8a81826001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401610f359190613c81565b60206040518083038186803b158015610f4d57600080fd5b505afa158015610f61573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f859190613bba565b612c3e565b610f92612d60565b610f9b846124ee565b610471836124ee565b6000610fb08585610477565b90506000826001600160a01b031663228cb7336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610fef57600080fd5b505af1158015611003573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110279190613704565b90506110358686868561261a565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f70aedd96040518163ffffffff1660e01b815260040160806040518083038186803b15801561109357600080fd5b505afa1580156110a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110cb9190613947565b919550935091505080156112ba57846001600160a01b0316836001600160a01b031663a4775772846040518263ffffffff1660e01b815260040161110f9190614214565b60206040518083038186803b15801561112757600080fd5b505afa15801561113b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115f9190613704565b6001600160a01b0316146111855760405162461bcd60e51b815260040161018690614146565b856001600160a01b0316836001600160a01b0316146111b65760405162461bcd60e51b815260040161018690613e0b565b604051630d1d697560e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906368eb4ba89061120690899086908690600401613d6c565b600060405180830381600087803b15801561122057600080fd5b505af1158015611234573d6000803e3d6000fd5b505060405163b390c0ab60e01b81526001600160a01b038916925063b390c0ab91506112669085908590600401614270565b602060405180830381600087803b15801561128057600080fd5b505af1158015611294573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b89190613bba565b505b6112c48587612477565b6040516370a0823160e01b81526000906001600160a01b038716906370a08231906112f3903090600401613c81565b60206040518083038186803b15801561130b57600080fd5b505afa15801561131f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113439190613bba565b90506000876001600160a01b031663a0712d68836040518263ffffffff1660e01b81526004016113739190614214565b602060405180830381600087803b15801561138d57600080fd5b505af11580156113a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113c59190613bba565b60405163e985e9c560e01b81529091506001600160a01b0389169063e985e9c5906114169030907f000000000000000000000000000000000000000000000000000000000000000090600401613c95565b60206040518083038186803b15801561142e57600080fd5b505afa158015611442573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114669190613b22565b6114ec5760405163a22cb46560e01b81526001600160a01b0389169063a22cb465906114b9907f000000000000000000000000000000000000000000000000000000000000000090600190600401613d38565b600060405180830381600087803b1580156114d357600080fd5b505af11580156114e7573d6000803e3d6000fd5b505050505b60405163314568d960e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063314568d99061153c908b9085908790600401613d6c565b600060405180830381600087803b15801561155657600080fd5b505af115801561156a573d6000803e3d6000fd5b50505050611576612d60565b61157f8b6124ee565b6115888a6124ee565b611591866124ee565b5050505050505050505050565b6043546001600160a01b031681565b6043546001600160a01b031633146115d75760405162461bcd60e51b815260040161018690613e51565b604380546001600160a01b03191690556042805462010000600160b01b03191633620100008102919091179091556040517fd345d81ce68c70b119a17eee79dc1421700bd9cb21ca148a62dc90983964e82f9161163391613c81565b60405180910390a1565b6042546201000090046001600160a01b0316331461166d5760405162461bcd60e51b815260040161018690613faa565b82811461168c5760405162461bcd60e51b815260040161018690613fd4565b60005b8381101561180b578282828181106116a357fe5b90506020020160208101906116b89190613b06565b15611795577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e660cc088686848181106116f857fe5b905060200201602081019061170d91906136e8565b6040518263ffffffff1660e01b81526004016117299190613c81565b60206040518083038186803b15801561174157600080fd5b505afa158015611755573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117799190613b22565b6117955760405162461bcd60e51b815260040161018690613ebf565b8282828181106117a157fe5b90506020020160208101906117b69190613b06565b608460008787858181106117c657fe5b90506020020160208101906117db91906136e8565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905560010161168f565b5050505050565b6042546201000090046001600160a01b031633146118425760405162461bcd60e51b815260040161018690613faa565b604380546001600160a01b0319166001600160a01b0383161790556040517f964dea888b00b2ab53f13dfe7ca334b46e99338c222ae232d98547a1da019f609061188d908390613c81565b60405180910390a150565b63f23a6e6160e01b9695505050505050565b604160209081526000928352604080842090915290825290205460ff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b8015806119765750604051636eb1769f60e11b81526001600160a01b0384169063dd62ed3e906119249030908690600401613c95565b60206040518083038186803b15801561193c57600080fd5b505afa158015611950573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119749190613bba565b155b6119925760405162461bcd60e51b8152600401610186906141be565b6119e88363095ea7b360e01b84846040516024016119b1929190613d53565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152612fa9565b505050565b3b151590565b6060611a028484600085613038565b90505b9392505050565b8015611bd857600019811415611ab3577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f70aedd96040518163ffffffff1660e01b815260040160806040518083038186803b158015611a7557600080fd5b505afa158015611a89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611aad9190613947565b93505050505b604051630d1d697560e31b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116916368eb4ba891611b25917f0000000000000000000000000000000000000000000000000000000000000000918716908690600401613d6c565b600060405180830381600087803b158015611b3f57600080fd5b505af1158015611b53573d6000803e3d6000fd5b5050604051632770a7eb60e21b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169250639dc29fac9150611ba59085908590600401613d53565b600060405180830381600087803b158015611bbf57600080fd5b505af1158015611bd3573d6000803e3d6000fd5b505050505b5050565b6001600160a01b03811660009081526084602052604090205460ff16611c145760405162461bcd60e51b81526004016101869061403e565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d7ac71ff6040518163ffffffff1660e01b815260040160206040518083038186803b158015611c6f57600080fd5b505afa158015611c83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca79190613bba565b9050604083013560608401356080850135600019831415611d65576040516320a8bee760e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906382a2fb9c90611d109087908c9060040161421d565b602060405180830381600087803b158015611d2a57600080fd5b505af1158015611d3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d629190613bba565b92505b600019821415611e12576040516320a8bee760e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906382a2fb9c90611dbd9087908b9060040161421d565b602060405180830381600087803b158015611dd757600080fd5b505af1158015611deb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0f9190613bba565b91505b600019811415611ebf576040516320a8bee760e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906382a2fb9c90611e6a908790899060040161421d565b602060405180830381600087803b158015611e8457600080fd5b505af1158015611e98573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ebc9190613bba565b90505b6000611f4b8760200135876001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611ef59190613c81565b60206040518083038186803b158015611f0d57600080fd5b505afa158015611f21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f459190613bba565b906130f9565b9050600080821561200657604051635d5155ef60e11b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063baa2abde90611faf908e908e908890600090819030904290600401613caf565b6040805180830381600087803b158015611fc857600080fd5b505af1158015611fdc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120009190613bd2565b90925090505b60006120168760a08c0135613121565b905060006120288760c08d0135613121565b9050818410801561203857508083115b156121575760408051600280825260608083018452926020830190803683370190505090508c8e8260008151811061206c57fe5b602002602001018360018151811061208057fe5b6001600160a01b0393841660209182029290920101529181169091527f000000000000000000000000000000000000000000000000000000000000000016638803dbee6120cd85886130f9565b6120d787866130f9565b8430426040518663ffffffff1660e01b81526004016120fa959493929190614234565b600060405180830381600087803b15801561211457600080fd5b505af1158015612128573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526121509190810190613a71565b5050612280565b818411801561216557508083105b156122805760408051600280825260608083018452926020830190803683370190505090508d8d8260008151811061219957fe5b60200260200101836001815181106121ad57fe5b6001600160a01b0393841660209182029290920101529181169091527f000000000000000000000000000000000000000000000000000000000000000016638803dbee6121fa84876130f9565b61220488876130f9565b8430426040518663ffffffff1660e01b8152600401612227959493929190614234565b600060405180830381600087803b15801561224157600080fd5b505af1158015612255573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227d9190810190613a71565b50505b61228a8d89613146565b6122948c88613146565b61229e8a87613146565b6040516370a0823160e01b815260a08c0135906001600160a01b038f16906370a08231906122d0903090600401613c81565b60206040518083038186803b1580156122e857600080fd5b505afa1580156122fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123209190613bba565b101561232b57600080fd5b6040516370a0823160e01b815260c08c0135906001600160a01b038e16906370a082319061235d903090600401613c81565b60206040518083038186803b15801561237557600080fd5b505afa158015612389573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123ad9190613bba565b10156123b857600080fd5b6040516370a0823160e01b815260208c0135906001600160a01b038c16906370a08231906123ea903090600401613c81565b60206040518083038186803b15801561240257600080fd5b505afa158015612416573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061243a9190613bba565b101561244557600080fd5b61244d612d60565b6124568d6124ee565b61245f8c6124ee565b6124688a6124ee565b50505050505050505050505050565b6001600160a01b0380831660009081526041602090815260408083209385168352929052205460ff16611bd8576124ba6001600160a01b038316826000196118ee565b6001600160a01b038083166000908152604160209081526040808320938516835292905220805460ff191660011790555050565b6040516370a0823160e01b81526000906001600160a01b038316906370a082319061251d903090600401613c81565b60206040518083038186803b15801561253557600080fd5b505afa158015612549573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061256d9190613bba565b90508015611bd857611bd87f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663630dc7cb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156125d157600080fd5b505afa1580156125e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126099190613704565b6001600160a01b03841690836131c4565b6001600160a01b03811660009081526084602052604090205460ff166126525760405162461bcd60e51b81526004016101869061403e565b61265a6131e3565b61266584833561325a565b61267383836020013561325a565b61268181836040013561325a565b61268f8483606001356132ae565b61269d8383608001356132ae565b6126ab818360a001356132ae565b6000806000866001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016126dc9190613c81565b60206040518083038186803b1580156126f457600080fd5b505afa158015612708573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061272c9190613bba565b90506000866001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161275c9190613c81565b60206040518083038186803b15801561277457600080fd5b505afa158015612788573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127ac9190613bba565b9050600080896001600160a01b0316876001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b1580156127f457600080fd5b505afa158015612808573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282c9190613704565b6001600160a01b031614156128c257866001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561287457600080fd5b505afa158015612888573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128ac9190613b66565b506001600160701b039182169350169050612945565b866001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b1580156128fb57600080fd5b505afa15801561290f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129339190613b66565b506001600160701b0390811693501690505b61295184848484613302565b90965094505084159250612a769150505760408051600280825260608083018452926020830190803683370190505090508161298e578686612991565b85875b8260008151811061299e57fe5b60200260200101836001815181106129b257fe5b6001600160a01b0393841660209182029290920101529181169091526040516338ed173960e01b81527f0000000000000000000000000000000000000000000000000000000000000000909116906338ed173990612a1d908690600090869030904290600401614234565b600060405180830381600087803b158015612a3757600080fd5b505af1158015612a4b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612a739190810190613a71565b50505b6040516370a0823160e01b81526000906001600160a01b038816906370a0823190612aa5903090600401613c81565b60206040518083038186803b158015612abd57600080fd5b505afa158015612ad1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612af59190613bba565b90506000866001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401612b259190613c81565b60206040518083038186803b158015612b3d57600080fd5b505afa158015612b51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b759190613bba565b90506000821180612b865750600081115b15610ea95760405162e8e33760e81b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e8e3370090612bec908b908b908790879060c08e01359060e08f01359030904290600401613cef565b606060405180830381600087803b158015612c0657600080fd5b505af1158015612c1a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115919190613bf5565b8015611bd857612c6e827f0000000000000000000000000000000000000000000000000000000000000000612477565b6040516340c10f1960e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906340c10f1990612cbc9085908590600401613d53565b600060405180830381600087803b158015612cd657600080fd5b505af1158015612cea573d6000803e3d6000fd5b505060405163314568d960e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116935063314568d99250611ba5917f0000000000000000000000000000000000000000000000000000000000000000918716908690600401613d6c565b6040516370a0823160e01b81526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190612daf903090600401613c81565b602060405180830381600087803b158015612dc957600080fd5b505af1158015612ddd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e019190613bba565b90508015612fa657604051632e1a7d4d60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690632e1a7d4d90612e55908490600401614214565b600060405180830381600087803b158015612e6f57600080fd5b505af1158015612e83573d6000803e3d6000fd5b5050505060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663630dc7cb6040518163ffffffff1660e01b815260040160206040518083038186803b158015612ee257600080fd5b505afa158015612ef6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f1a9190613704565b604080516000815260208101918290526001600160a01b0392909216918491612f439190613c65565b60006040518083038185875af1925050503d8060008114612f80576040519150601f19603f3d011682016040523d82523d6000602084013e612f85565b606091505b5050905080611bd85760405162461bcd60e51b815260040161018690613de0565b50565b6060612ffe826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166119f39092919063ffffffff16565b8051909150156119e8578080602001905181019061301c9190613b22565b6119e85760405162461bcd60e51b815260040161018690614174565b60608247101561305a5760405162461bcd60e51b815260040161018690613f2d565b613063856119ed565b61307f5760405162461bcd60e51b81526004016101869061410f565b60006060866001600160a01b0316858760405161309c9190613c65565b60006040518083038185875af1925050503d80600081146130d9576040519150601f19603f3d011682016040523d82523d6000602084013e6130de565b606091505b50915091506130ee828286613351565b979650505050505050565b60008282111561311b5760405162461bcd60e51b815260040161018690613ef6565b50900390565b60008282018381101561063e5760405162461bcd60e51b815260040161018690613e88565b8015611bd857613176827f0000000000000000000000000000000000000000000000000000000000000000612477565b604051630450cfaf60e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906322867d7890611ba59085908590600401613d53565b6119e88363a9059cbb60e01b84846040516024016119b1929190613d53565b3415613258577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b15801561324457600080fd5b505af115801561180b573d6000803e3d6000fd5b565b8015611bd85760405163246b5de160e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906348d6bbc290611ba59085908590600401613d53565b8015611bd857604051634b8a352960e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690634b8a352990611ba59085908590600401613d53565b60008061330f858561338a565b613319878561338a565b106133355761332a868686866133c4565b915060009050613348565b613341858785876133c4565b9150600190505b94509492505050565b60608315613360575081611a05565b8251156133705782518084602001fd5b8160405162461bcd60e51b81526004016101869190613dad565b60008261339957506000610641565b828202828482816133a657fe5b041461063e5760405162461bcd60e51b8152600401610186906140ac565b60006133d0848461338a565b6133da868461338a565b10156133f85760405162461bcd60e51b8152600401610186906140ed565b6103e560006134096107cd8661338a565b9050600061342461341a888861338a565b611f458a8861338a565b905060006134518761344b6134398b8a613121565b613445866103e861338a565b906134be565b9061338a565b90506000613464600461344b878561338a565b9050600061348461347f83613479888061338a565b90613121565b6134f0565b9050600061349282876130f9565b905060006134a188600261338a565b90506134ad82826134be565b9d9c50505050505050505050505050565b60008082116134df5760405162461bcd60e51b815260040161018690613f73565b8183816134e857fe5b049392505050565b6000816134ff57506000610432565b816001600160801b82106135185760809190911c9060401b5b6801000000000000000082106135335760409190911c9060201b5b640100000000821061354a5760209190911c9060101b5b62010000821061355f5760109190911c9060081b5b61010082106135735760089190911c9060041b5b601082106135865760049190911c9060021b5b600882106135925760011b5b600181858161359d57fe5b048201901c905060018185816135af57fe5b048201901c905060018185816135c157fe5b048201901c905060018185816135d357fe5b048201901c905060018185816135e557fe5b048201901c905060018185816135f757fe5b048201901c9050600181858161360957fe5b048201901c9050600081858161361b57fe5b04905080821061362b578061362d565b815b95945050505050565b60008083601f840112613647578182fd5b50813567ffffffffffffffff81111561365e578182fd5b602083019150836020808302850101111561367857600080fd5b9250929050565b60008083601f840112613690578182fd5b50813567ffffffffffffffff8111156136a7578182fd5b60208301915083602082850101111561367857600080fd5b600061010082840312156136d1578081fd5b50919050565b600060e082840312156136d1578081fd5b6000602082840312156136f9578081fd5b813561063e816142f1565b600060208284031215613715578081fd5b815161063e816142f1565b60008060408385031215613732578081fd5b823561373d816142f1565b9150602083013561374d816142f1565b809150509250929050565b60008060008060008060008060a0898b031215613773578384fd5b883561377e816142f1565b9750602089013561378e816142f1565b9650604089013567ffffffffffffffff808211156137aa578586fd5b6137b68c838d01613636565b909850965060608b01359150808211156137ce578586fd5b6137da8c838d01613636565b909650945060808b01359150808211156137f2578384fd5b506137ff8b828c0161367f565b999c989b5096995094979396929594505050565b60008060006101408486031215613828578283fd5b8335613833816142f1565b92506020840135613843816142f1565b915061385285604086016136bf565b90509250925092565b6000806000806101608587031215613871578384fd5b843561387c816142f1565b9350602085013561388c816142f1565b925061389b86604087016136bf565b91506101408501356138ac816142f1565b939692955090935050565b600080600061012084860312156138cc578283fd5b83356138d7816142f1565b925060208401356138e7816142f1565b915061385285604086016136d7565b600080600080610140858703121561390c578384fd5b8435613917816142f1565b93506020850135613927816142f1565b925061393686604087016136d7565b91506101208501356138ac816142f1565b6000806000806080858703121561395c578182fd5b8451613967816142f1565b6020860151909450613978816142f1565b6040860151606090960151949790965092505050565b60008060008060008060a087890312156139a6578384fd5b86356139b1816142f1565b955060208701356139c1816142f1565b94506040870135935060608701359250608087013567ffffffffffffffff8111156139ea578283fd5b6139f689828a0161367f565b979a9699509497509295939492505050565b60008060008060408587031215613a1d578182fd5b843567ffffffffffffffff80821115613a34578384fd5b613a4088838901613636565b90965094506020870135915080821115613a58578384fd5b50613a6587828801613636565b95989497509550505050565b60006020808385031215613a83578182fd5b825167ffffffffffffffff811115613a99578283fd5b8301601f81018513613aa9578283fd5b8051613abc613ab7826142a5565b61427e565b8181528381019083850185840285018601891015613ad8578687fd5b8694505b83851015613afa578051835260019490940193918501918501613adc565b50979650505050505050565b600060208284031215613b17578081fd5b813561063e81614306565b600060208284031215613b33578081fd5b815161063e81614306565b600060208284031215613b4f578081fd5b81356001600160e01b03198116811461063e578182fd5b600080600060608486031215613b7a578081fd5b8351613b8581614314565b6020850151909350613b9681614314565b604085015190925063ffffffff81168114613baf578182fd5b809150509250925092565b600060208284031215613bcb578081fd5b5051919050565b60008060408385031215613be4578182fd5b505080516020909101519092909150565b600080600060608486031215613c09578081fd5b8351925060208401519150604084015190509250925092565b6000815180845260208085019450808401835b83811015613c5a5781516001600160a01b031687529582019590820190600101613c35565b509495945050505050565b60008251613c778184602087016142c5565b9190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b039788168152958716602087015260408601949094526060850192909252608084015290921660a082015260c081019190915260e00190565b6001600160a01b039889168152968816602088015260408701959095526060860193909352608085019190915260a084015290921660c082015260e08101919091526101000190565b6001600160a01b039290921682521515602082015260400190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b901515815260200190565b6001600160e01b031991909116815260200190565b6000602082528251806020840152613dcc8160408501602087016142c5565b601f01601f19169190910160400192915050565b6020808252601190820152701c99599d5b99081155120819985a5b1959607a1b604082015260600190565b60208082526026908201527f636f6c6c61746572616c20746f6b656e202620777374616b696e67206d69736d604082015265185d18da195960d21b606082015260800190565b60208082526018908201527f6e6f74207468652070656e64696e6720676f7665726e6f720000000000000000604082015260600190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b6020808252601b908201527f6f7261636c65206e6f7420737570706f7274206c7020746f6b656e0000000000604082015260600190565b6020808252601e908201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604082015260600190565b60208082526026908201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6040820152651c8818d85b1b60d21b606082015260800190565b6020808252601a908201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604082015260600190565b60208082526010908201526f3737ba103a34329033b7bb32b93737b960811b604082015260600190565b60208082526025908201527f6c70546f6b656e732026207374617475736573206c656e677468206d69736d616040820152641d18da195960da1b606082015260800190565b6020808252600b908201526a3737903638103a37b5b2b760a91b604082015260600190565b60208082526018908201527f6c7020746f6b656e206e6f742077686974656c69737465640000000000000000604082015260600190565b60208082526017908201527f455448206d75737420636f6d652066726f6d2057455448000000000000000000604082015260600190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b60208082526008908201526714995d995c9cd95960c21b604082015260600190565b6020808252601d908201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604082015260600190565b602080825260149082015273696e636f727265637420756e6465726c79696e6760601b604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b60208082526036908201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60408201527520746f206e6f6e2d7a65726f20616c6c6f77616e636560501b606082015260800190565b90815260200190565b9182526001600160a01b0316602082015260400190565b600086825285602083015260a0604083015261425360a0830186613c22565b6001600160a01b0394909416606083015250608001529392505050565b918252602082015260400190565b60405181810167ffffffffffffffff8111828210171561429d57600080fd5b604052919050565b600067ffffffffffffffff8211156142bb578081fd5b5060209081020190565b60005b838110156142e05781810151838201526020016142c8565b838111156104715750506000910152565b6001600160a01b0381168114612fa657600080fd5b8015158114612fa657600080fd5b6001600160701b0381168114612fa657600080fdfea264697066735822122046adae57f08fbc9888db207a215123f64c98325d795d2b4a08708672875421a464736f6c634300060c0033",
  "bytecodeSha1": "8e0e9f37d1f343401e78b8997e938a82a263ee5a",
  "compiler": {
    "evm_version": "istanbul",
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "version": "0.6.12+commit.27d51765"
  },
  "contractName": "UniswapV2SpellV1",
  "coverageMap": {
    "branches": {
      "1": {},
      "10": {},
      "12": {},
      "13": {
        "SafeERC20._callOptionalReturn": {
          "203": [
            3495,
            3516,
            false
          ],
          "204": [
            3624,
            3654,
            true
          ]
        }
      },
      "14": {
        "Address._verifyCallResult": {
          "179": [
            7234,
            7241,
            false
          ],
          "180": [
            7375,
            7396,
            false
          ]
        },
        "Address.functionCallWithValue": {
          "177": [
            4767,
            4797,
            true
          ],
          "178": [
            4858,
            4876,
            true
          ]
        }
      },
      "17": {
        "Governable.acceptGovernor": {
          "193": [
            1283,
            1312,
            true
          ]
        }
      },
      "2": {},
      "4": {
        "SafeMath.add": {
          "206": [
            2802,
            2808,
            true
          ]
        },
        "SafeMath.div": {
          "209": [
            4302,
            4307,
            true
          ]
        },
        "SafeMath.mul": {
          "207": [
            3619,
            3625,
            false
          ],
          "208": [
            3680,
            3690,
            true
          ]
        },
        "SafeMath.sub": {
          "205": [
            3221,
            3227,
            true
          ]
        }
      },
      "41": {
        "BasicSpell.<receive>": {
          "181": [
            4438,
            4456,
            true
          ]
        },
        "BasicSpell.doBorrow": {
          "192": [
            3064,
            3074,
            false
          ]
        },
        "BasicSpell.doPutCollateral": {
          "186": [
            3707,
            3717,
            false
          ]
        },
        "BasicSpell.doRefund": {
          "185": [
            2275,
            2286,
            false
          ]
        },
        "BasicSpell.doRefundETH": {
          "187": [
            2545,
            2556,
            false
          ],
          "188": [
            2688,
            2695,
            true
          ]
        },
        "BasicSpell.doRepay": {
          "189": [
            3369,
            3379,
            false
          ]
        },
        "BasicSpell.doTakeCollateral": {
          "182": [
            4104,
            4114,
            false
          ],
          "183": [
            4128,
            4146,
            false
          ]
        },
        "BasicSpell.doTransmit": {
          "191": [
            1970,
            1980,
            false
          ]
        },
        "BasicSpell.doTransmitETH": {
          "190": [
            1560,
            1573,
            false
          ]
        },
        "BasicSpell.ensureApprove": {
          "184": [
            1305,
            1329,
            false
          ]
        }
      },
      "45": {
        "UniswapV2SpellV1._optimalDepositA": {
          "176": [
            2801,
            2833,
            true
          ]
        },
        "UniswapV2SpellV1.addLiquidityInternal": {
          "169": [
            3946,
            3969,
            true
          ],
          "170": [
            4561,
            4598,
            false
          ],
          "171": [
            4858,
            4869,
            false
          ],
          "172": [
            4948,
            4958,
            true
          ],
          "173": [
            5240,
            5248,
            true
          ],
          "174": [
            5252,
            5260,
            false
          ]
        },
        "UniswapV2SpellV1.addLiquidityWStakingRewards": {
          "153": [
            6859,
            6871,
            false
          ],
          "154": [
            6889,
            6949,
            true
          ],
          "155": [
            6990,
            7011,
            true
          ],
          "156": [
            7352,
            7425,
            false
          ]
        },
        "UniswapV2SpellV1.getAndApprovePair": {
          "147": [
            1395,
            1411,
            false
          ],
          "148": [
            1473,
            1489,
            true
          ]
        },
        "UniswapV2SpellV1.harvestWStakingRewards": {
          "149": [
            12665,
            12688,
            true
          ],
          "150": [
            12731,
            12752,
            true
          ]
        },
        "UniswapV2SpellV1.optimalDeposit": {
          "175": [
            2135,
            2167,
            false
          ]
        },
        "UniswapV2SpellV1.removeLiquidityInternal": {
          "157": [
            8444,
            8467,
            true
          ],
          "158": [
            8725,
            8746,
            false
          ],
          "159": [
            8829,
            8850,
            false
          ],
          "160": [
            8933,
            8955,
            false
          ],
          "161": [
            9223,
            9240,
            false
          ],
          "162": [
            9566,
            9584,
            false
          ],
          "163": [
            9588,
            9606,
            false
          ],
          "164": [
            9889,
            9907,
            false
          ],
          "165": [
            9911,
            9929,
            false
          ],
          "166": [
            10353,
            10407,
            true
          ],
          "167": [
            10422,
            10476,
            true
          ],
          "168": [
            10491,
            10547,
            true
          ]
        },
        "UniswapV2SpellV1.removeLiquidityWStakingRewards": {
          "151": [
            11844,
            11904,
            true
          ],
          "152": [
            11943,
            11964,
            true
          ]
        }
      },
      "46": {
        "WhitelistSpell.setWhitelistLPTokens": {
          "210": [
            696,
            730,
            true
          ],
          "211": [
            839,
            852,
            false
          ],
          "212": [
            872,
            899,
            true
          ]
        }
      },
      "5": {},
      "50": {},
      "51": {
        "HomoraMath.sqrt": {
          "194": [
            814,
            820,
            false
          ],
          "195": [
            874,
            915,
            false
          ],
          "196": [
            968,
            993,
            false
          ],
          "197": [
            1044,
            1061,
            false
          ],
          "198": [
            1112,
            1125,
            false
          ],
          "199": [
            1175,
            1186,
            false
          ],
          "200": [
            1235,
            1245,
            false
          ],
          "201": [
            1294,
            1303,
            false
          ],
          "202": [
            1581,
            1587,
            true
          ]
        }
      },
      "57": {},
      "63": {},
      "69": {},
      "7": {},
      "70": {},
      "71": {},
      "72": {},
      "73": {},
      "74": {},
      "77": {},
      "8": {}
    },
    "statements": {
      "1": {
        "ERC165.supportsInterface": {
          "1": [
            1066,
            1106
          ]
        }
      },
      "10": {},
      "12": {},
      "13": {
        "SafeERC20._callOptionalReturn": {
          "100": [
            3616,
            3701
          ]
        },
        "SafeERC20.safeApprove": {
          "52": [
            1704,
            1854
          ],
          "53": [
            1864,
            1954
          ]
        },
        "SafeERC20.safeTransfer": {
          "109": [
            786,
            872
          ]
        }
      },
      "14": {
        "Address._verifyCallResult": {
          "117": [
            7257,
            7274
          ],
          "118": [
            7765,
            7785
          ]
        },
        "Address.functionCall": {
          "55": [
            3708,
            3767
          ]
        },
        "Address.functionCallWithValue": {
          "101": [
            4759,
            4840
          ],
          "102": [
            4850,
            4910
          ],
          "103": [
            5065,
            5124
          ]
        },
        "Address.isContract": {
          "54": [
            1117,
            1132
          ]
        }
      },
      "17": {
        "Governable.acceptGovernor": {
          "42": [
            1275,
            1341
          ],
          "43": [
            1347,
            1375
          ],
          "44": [
            1381,
            1402
          ],
          "45": [
            1408,
            1439
          ]
        },
        "Governable.setPendingGovernor": {
          "50": [
            1058,
            1092
          ],
          "51": [
            1098,
            1139
          ]
        }
      },
      "2": {},
      "4": {
        "SafeMath.add": {
          "106": [
            2794,
            2840
          ]
        },
        "SafeMath.div": {
          "123": [
            4294,
            4338
          ],
          "124": [
            4348,
            4360
          ]
        },
        "SafeMath.mul": {
          "119": [
            3627,
            3635
          ],
          "120": [
            3672,
            3728
          ]
        },
        "SafeMath.sub": {
          "104": [
            3213,
            3262
          ],
          "105": [
            3272,
            3284
          ]
        }
      },
      "41": {
        "BasicSpell.<receive>": {
          "0": [
            4430,
            4484
          ]
        },
        "BasicSpell.doBorrow": {
          "112": [
            3084,
            3110
          ]
        },
        "BasicSpell.doPutCollateral": {
          "95": [
            3727,
            3764
          ],
          "96": [
            3772,
            3798
          ],
          "97": [
            3806,
            3862
          ]
        },
        "BasicSpell.doRefund": {
          "80": [
            2296,
            2348
          ]
        },
        "BasicSpell.doRefundETH": {
          "98": [
            2566,
            2595
          ],
          "99": [
            2680,
            2717
          ]
        },
        "BasicSpell.doRepay": {
          "107": [
            3389,
            3424
          ],
          "108": [
            3432,
            3457
          ]
        },
        "BasicSpell.doTakeCollateral": {
          "56": [
            4158,
            4204
          ],
          "57": [
            4220,
            4277
          ],
          "58": [
            4285,
            4311
          ]
        },
        "BasicSpell.doTransmit": {
          "111": [
            1990,
            2018
          ]
        },
        "BasicSpell.doTransmitETH": {
          "110": [
            1583,
            1622
          ]
        },
        "BasicSpell.ensureApprove": {
          "78": [
            1339,
            1383
          ],
          "79": [
            1391,
            1422
          ]
        }
      },
      "45": {
        "UniswapV2SpellV1._optimalDepositA": {
          "121": [
            2793,
            2846
          ],
          "122": [
            3155,
            3188
          ]
        },
        "UniswapV2SpellV1.addLiquidityInternal": {
          "81": [
            3938,
            3998
          ],
          "82": [
            4038,
            4053
          ],
          "83": [
            4059,
            4091
          ],
          "84": [
            4097,
            4129
          ],
          "85": [
            4135,
            4164
          ],
          "86": [
            4206,
            4238
          ],
          "87": [
            4244,
            4276
          ],
          "88": [
            4282,
            4311
          ],
          "89": [
            4610,
            4659
          ],
          "90": [
            4684,
            4733
          ],
          "91": [
            4749,
            4811
          ],
          "92": [
            4927,
            4996
          ],
          "93": [
            5004,
            5085
          ],
          "94": [
            5270,
            5447
          ]
        },
        "UniswapV2SpellV1.addLiquidityWERC20": {
          "25": [
            5893,
            5938
          ],
          "26": [
            5970,
            6026
          ],
          "27": [
            6069,
            6082
          ],
          "28": [
            6088,
            6104
          ],
          "29": [
            6110,
            6126
          ]
        },
        "UniswapV2SpellV1.addLiquidityWStakingRewards": {
          "30": [
            6686,
            6731
          ],
          "31": [
            6881,
            6974
          ],
          "32": [
            6982,
            7054
          ],
          "33": [
            7062,
            7109
          ],
          "34": [
            7117,
            7166
          ],
          "35": [
            7204,
            7231
          ],
          "36": [
            7435,
            7500
          ],
          "37": [
            7512,
            7561
          ],
          "38": [
            7604,
            7617
          ],
          "39": [
            7623,
            7639
          ],
          "40": [
            7645,
            7661
          ],
          "41": [
            7692,
            7708
          ]
        },
        "UniswapV2SpellV1.getAndApprovePair": {
          "4": [
            1421,
            1457
          ],
          "5": [
            1465,
            1505
          ],
          "6": [
            1513,
            1551
          ],
          "7": [
            1559,
            1597
          ],
          "8": [
            1605,
            1639
          ],
          "9": [
            1647,
            1673
          ],
          "10": [
            1681,
            1707
          ],
          "11": [
            1719,
            1728
          ]
        },
        "UniswapV2SpellV1.harvestWStakingRewards": {
          "12": [
            12657,
            12717
          ],
          "13": [
            12723,
            12795
          ],
          "14": [
            12832,
            12879
          ],
          "15": [
            12885,
            12934
          ],
          "16": [
            13021,
            13048
          ],
          "17": [
            13109,
            13149
          ],
          "18": [
            13180,
            13196
          ]
        },
        "UniswapV2SpellV1.optimalDeposit": {
          "113": [
            2177,
            2227
          ],
          "114": [
            2235,
            2253
          ],
          "115": [
            2274,
            2324
          ],
          "116": [
            2332,
            2349
          ]
        },
        "UniswapV2SpellV1.removeLiquidityInternal": {
          "59": [
            8436,
            8496
          ],
          "60": [
            8756,
            8813
          ],
          "61": [
            8860,
            8917
          ],
          "62": [
            8965,
            9019
          ],
          "63": [
            9250,
            9420
          ],
          "64": [
            9664,
            9701
          ],
          "65": [
            9709,
            9872
          ],
          "66": [
            9987,
            10024
          ],
          "67": [
            10032,
            10195
          ],
          "68": [
            10224,
            10250
          ],
          "69": [
            10256,
            10282
          ],
          "70": [
            10288,
            10311
          ],
          "71": [
            10345,
            10408
          ],
          "72": [
            10414,
            10477
          ],
          "73": [
            10483,
            10548
          ],
          "74": [
            10581,
            10594
          ],
          "75": [
            10600,
            10616
          ],
          "76": [
            10622,
            10638
          ],
          "77": [
            10644,
            10656
          ]
        },
        "UniswapV2SpellV1.removeLiquidityWERC20": {
          "2": [
            11117,
            11152
          ],
          "3": [
            11188,
            11236
          ]
        },
        "UniswapV2SpellV1.removeLiquidityWStakingRewards": {
          "19": [
            11836,
            11929
          ],
          "20": [
            11935,
            12007
          ],
          "21": [
            12013,
            12065
          ],
          "22": [
            12071,
            12125
          ],
          "23": [
            12161,
            12209
          ],
          "24": [
            12240,
            12256
          ]
        }
      },
      "46": {
        "WhitelistSpell.setWhitelistLPTokens": {
          "46": [
            688,
            772
          ],
          "47": [
            864,
            931
          ],
          "48": [
            947,
            997
          ],
          "49": [
            820,
            825
          ]
        }
      },
      "5": {},
      "50": {},
      "51": {
        "HomoraMath.sqrt": {
          "125": [
            822,
            830
          ],
          "126": [
            925,
            935
          ],
          "127": [
            943,
            951
          ],
          "128": [
            1003,
            1012
          ],
          "129": [
            1020,
            1028
          ],
          "130": [
            1071,
            1080
          ],
          "131": [
            1088,
            1096
          ],
          "132": [
            1135,
            1144
          ],
          "133": [
            1152,
            1159
          ],
          "134": [
            1196,
            1204
          ],
          "135": [
            1212,
            1219
          ],
          "136": [
            1255,
            1263
          ],
          "137": [
            1271,
            1278
          ],
          "138": [
            1313,
            1320
          ],
          "139": [
            1333,
            1353
          ],
          "140": [
            1359,
            1379
          ],
          "141": [
            1385,
            1405
          ],
          "142": [
            1411,
            1431
          ],
          "143": [
            1437,
            1457
          ],
          "144": [
            1463,
            1483
          ],
          "145": [
            1489,
            1509
          ],
          "146": [
            1573,
            1597
          ]
        }
      },
      "57": {},
      "63": {},
      "69": {},
      "7": {},
      "70": {},
      "71": {},
      "72": {},
      "73": {},
      "74": {},
      "77": {},
      "8": {}
    }
  },
  "dependencies": [
    "OpenZeppelin/openzeppelin-contracts@3.4.0/Address",
    "BasicSpell",
    "ERC1155NaiveReceiver",
    "OpenZeppelin/openzeppelin-contracts@3.4.0/ERC1155Receiver",
    "OpenZeppelin/openzeppelin-contracts@3.4.0/ERC165",
    "Governable",
    "HomoraMath",
    "IBank",
    "OpenZeppelin/openzeppelin-contracts@3.4.0/IERC1155",
    "OpenZeppelin/openzeppelin-contracts@3.4.0/IERC1155Receiver",
    "OpenZeppelin/openzeppelin-contracts@3.4.0/IERC165",
    "OpenZeppelin/openzeppelin-contracts@3.4.0/IERC20",
    "IERC20Wrapper",
    "IUniswapV2Factory",
    "IUniswapV2Pair",
    "IUniswapV2Router01",
    "IUniswapV2Router02",
    "IWERC20",
    "IWETH",
    "IWStakingRewards",
    "OpenZeppelin/openzeppelin-contracts@3.4.0/Initializable",
    "OpenZeppelin/openzeppelin-contracts@3.4.0/SafeERC20",
    "OpenZeppelin/openzeppelin-contracts@3.4.0/SafeMath",
    "WhitelistSpell"
  ],
  "deployedBytecode": "6080604052600436106101395760003560e01c8063bc197c81116100ab578063e58bb6391161006f578063e58bb6391461036a578063ee42c6f41461037f578063f235757f1461039f578063f23a6e61146103bf578063f4b16045146103df578063f887ea40146103ff57610191565b8063bc197c81146102ed578063c45a01551461031a578063cc9b18801461032f578063d57cdec514610342578063e3056a341461035557610191565b806345174f18116100fd57806345174f18146102435780634bab09f6146102635780635741229c1461028357806369454b861461029857806376cdb03b146102b8578063b2cfde44146102cd57610191565b806301ffc9a7146101965780630c340a24146101cc5780631387d96d146101ee5780632185059f1461020e5780633fc8cef31461022e57610191565b3661019157336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461018f5760405162461bcd60e51b815260040161018690614075565b60405180910390fd5b005b600080fd5b3480156101a257600080fd5b506101b66101b1366004613b3e565b610414565b6040516101c39190613d8d565b60405180910390f35b3480156101d857600080fd5b506101e1610437565b6040516101c39190613c81565b3480156101fa57600080fd5b5061018f6102093660046138b7565b61044c565b34801561021a57600080fd5b506101e1610229366004613720565b610477565b34801561023a57600080fd5b506101e1610647565b34801561024f57600080fd5b5061018f61025e3660046136e8565b61066b565b34801561026f57600080fd5b506101b661027e3660046136e8565b610b10565b34801561028f57600080fd5b506101e1610b25565b3480156102a457600080fd5b506101e16102b3366004613720565b610b49565b3480156102c457600080fd5b506101e1610b6f565b3480156102d957600080fd5b5061018f6102e83660046138f6565b610b93565b3480156102f957600080fd5b5061030d610308366004613758565b610eb3565b6040516101c39190613d98565b34801561032657600080fd5b506101e1610ec7565b61018f61033d366004613813565b610eeb565b61018f61035036600461385b565b610fa4565b34801561036157600080fd5b506101e161159e565b34801561037657600080fd5b5061018f6115ad565b34801561038b57600080fd5b5061018f61039a366004613a08565b61163d565b3480156103ab57600080fd5b5061018f6103ba3660046136e8565b611812565b3480156103cb57600080fd5b5061030d6103da36600461398e565b611898565b3480156103eb57600080fd5b506101b66103fa366004613720565b6118aa565b34801561040b57600080fd5b506101e16118ca565b6001600160e01b0319811660009081526020819052604090205460ff165b919050565b6042546201000090046001600160a01b031681565b60006104588484610477565b9050610465818335611a0c565b61047184848484611bdc565b50505050565b6001600160a01b03808316600090815260856020908152604080832085851684529091528120549091168061063e5760405163e6a4390560e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e6a43905906104f49087908790600401613c95565b60206040518083038186803b15801561050c57600080fd5b505afa158015610520573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105449190613704565b90506001600160a01b03811661056c5760405162461bcd60e51b815260040161018690614019565b610596847f0000000000000000000000000000000000000000000000000000000000000000612477565b6105c0837f0000000000000000000000000000000000000000000000000000000000000000612477565b6105ea817f0000000000000000000000000000000000000000000000000000000000000000612477565b6001600160a01b0380851660008181526085602081815260408084208987168552825280842080549688166001600160a01b0319978816811790915592825280842094845293905291902080549092161790555b90505b92915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000816001600160a01b031663228cb7336040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156106a857600080fd5b505af11580156106bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e09190613704565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f70aedd96040518163ffffffff1660e01b815260040160806040518083038186803b15801561073e57600080fd5b505afa158015610752573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107769190613947565b5092509250506000846001600160a01b031663a4775772836040518263ffffffff1660e01b81526004016107aa9190614214565b60206040518083038186803b1580156107c257600080fd5b505afa1580156107d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107fa9190613704565b6001600160a01b03811660009081526084602052604090205490915060ff166108355760405162461bcd60e51b81526004016101869061403e565b846001600160a01b0316836001600160a01b0316146108665760405162461bcd60e51b815260040161018690613e0b565b604051630d1d697560e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906368eb4ba8906108b8908890869060001990600401613d6c565b600060405180830381600087803b1580156108d257600080fd5b505af11580156108e6573d6000803e3d6000fd5b505060405163b390c0ab60e01b81526001600160a01b038816925063b390c0ab915061091a90859060001990600401614270565b602060405180830381600087803b15801561093457600080fd5b505af1158015610948573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096c9190613bba565b506040516370a0823160e01b81526000906001600160a01b038316906370a082319061099c903090600401613c81565b60206040518083038186803b1580156109b457600080fd5b505afa1580156109c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ec9190613bba565b90506109f88287612477565b60405163140e25ad60e31b81526000906001600160a01b0388169063a0712d6890610a27908590600401614214565b602060405180830381600087803b158015610a4157600080fd5b505af1158015610a55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a799190613bba565b60405163314568d960e01b81529091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063314568d990610acc908a9085908790600401613d6c565b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050610b07866124ee565b50505050505050565b60846020526000908152604090205460ff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b60856020908152600092835260408084209091529082529020546001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610b9f8585610477565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f70aedd96040518163ffffffff1660e01b815260040160806040518083038186803b158015610bfd57600080fd5b505afa158015610c11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c359190613947565b5092509250506000846001600160a01b031663228cb7336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610c7857600080fd5b505af1158015610c8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cb09190613704565b9050836001600160a01b0316836001600160a01b031663a4775772846040518263ffffffff1660e01b8152600401610ce89190614214565b60206040518083038186803b158015610d0057600080fd5b505afa158015610d14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d389190613704565b6001600160a01b031614610d5e5760405162461bcd60e51b815260040161018690614146565b846001600160a01b0316836001600160a01b031614610d8f5760405162461bcd60e51b815260040161018690613e0b565b604051630d1d697560e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906368eb4ba890610de090889086908b3590600401613d6c565b600060405180830381600087803b158015610dfa57600080fd5b505af1158015610e0e573d6000803e3d6000fd5b505060405163b390c0ab60e01b81526001600160a01b038816925063b390c0ab9150610e419085908a3590600401614270565b602060405180830381600087803b158015610e5b57600080fd5b505af1158015610e6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e939190613bba565b50610ea088888887611bdc565b610ea9816124ee565b5050505050505050565b63bc197c8160e01b98975050505050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000610ef78484610477565b9050610f058484848461261a565b610f8a81826001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401610f359190613c81565b60206040518083038186803b158015610f4d57600080fd5b505afa158015610f61573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f859190613bba565b612c3e565b610f92612d60565b610f9b846124ee565b610471836124ee565b6000610fb08585610477565b90506000826001600160a01b031663228cb7336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610fef57600080fd5b505af1158015611003573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110279190613704565b90506110358686868561261a565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f70aedd96040518163ffffffff1660e01b815260040160806040518083038186803b15801561109357600080fd5b505afa1580156110a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110cb9190613947565b919550935091505080156112ba57846001600160a01b0316836001600160a01b031663a4775772846040518263ffffffff1660e01b815260040161110f9190614214565b60206040518083038186803b15801561112757600080fd5b505afa15801561113b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115f9190613704565b6001600160a01b0316146111855760405162461bcd60e51b815260040161018690614146565b856001600160a01b0316836001600160a01b0316146111b65760405162461bcd60e51b815260040161018690613e0b565b604051630d1d697560e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906368eb4ba89061120690899086908690600401613d6c565b600060405180830381600087803b15801561122057600080fd5b505af1158015611234573d6000803e3d6000fd5b505060405163b390c0ab60e01b81526001600160a01b038916925063b390c0ab91506112669085908590600401614270565b602060405180830381600087803b15801561128057600080fd5b505af1158015611294573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b89190613bba565b505b6112c48587612477565b6040516370a0823160e01b81526000906001600160a01b038716906370a08231906112f3903090600401613c81565b60206040518083038186803b15801561130b57600080fd5b505afa15801561131f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113439190613bba565b90506000876001600160a01b031663a0712d68836040518263ffffffff1660e01b81526004016113739190614214565b602060405180830381600087803b15801561138d57600080fd5b505af11580156113a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113c59190613bba565b60405163e985e9c560e01b81529091506001600160a01b0389169063e985e9c5906114169030907f000000000000000000000000000000000000000000000000000000000000000090600401613c95565b60206040518083038186803b15801561142e57600080fd5b505afa158015611442573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114669190613b22565b6114ec5760405163a22cb46560e01b81526001600160a01b0389169063a22cb465906114b9907f000000000000000000000000000000000000000000000000000000000000000090600190600401613d38565b600060405180830381600087803b1580156114d357600080fd5b505af11580156114e7573d6000803e3d6000fd5b505050505b60405163314568d960e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063314568d99061153c908b9085908790600401613d6c565b600060405180830381600087803b15801561155657600080fd5b505af115801561156a573d6000803e3d6000fd5b50505050611576612d60565b61157f8b6124ee565b6115888a6124ee565b611591866124ee565b5050505050505050505050565b6043546001600160a01b031681565b6043546001600160a01b031633146115d75760405162461bcd60e51b815260040161018690613e51565b604380546001600160a01b03191690556042805462010000600160b01b03191633620100008102919091179091556040517fd345d81ce68c70b119a17eee79dc1421700bd9cb21ca148a62dc90983964e82f9161163391613c81565b60405180910390a1565b6042546201000090046001600160a01b0316331461166d5760405162461bcd60e51b815260040161018690613faa565b82811461168c5760405162461bcd60e51b815260040161018690613fd4565b60005b8381101561180b578282828181106116a357fe5b90506020020160208101906116b89190613b06565b15611795577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e660cc088686848181106116f857fe5b905060200201602081019061170d91906136e8565b6040518263ffffffff1660e01b81526004016117299190613c81565b60206040518083038186803b15801561174157600080fd5b505afa158015611755573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117799190613b22565b6117955760405162461bcd60e51b815260040161018690613ebf565b8282828181106117a157fe5b90506020020160208101906117b69190613b06565b608460008787858181106117c657fe5b90506020020160208101906117db91906136e8565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905560010161168f565b5050505050565b6042546201000090046001600160a01b031633146118425760405162461bcd60e51b815260040161018690613faa565b604380546001600160a01b0319166001600160a01b0383161790556040517f964dea888b00b2ab53f13dfe7ca334b46e99338c222ae232d98547a1da019f609061188d908390613c81565b60405180910390a150565b63f23a6e6160e01b9695505050505050565b604160209081526000928352604080842090915290825290205460ff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b8015806119765750604051636eb1769f60e11b81526001600160a01b0384169063dd62ed3e906119249030908690600401613c95565b60206040518083038186803b15801561193c57600080fd5b505afa158015611950573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119749190613bba565b155b6119925760405162461bcd60e51b8152600401610186906141be565b6119e88363095ea7b360e01b84846040516024016119b1929190613d53565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152612fa9565b505050565b3b151590565b6060611a028484600085613038565b90505b9392505050565b8015611bd857600019811415611ab3577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f70aedd96040518163ffffffff1660e01b815260040160806040518083038186803b158015611a7557600080fd5b505afa158015611a89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611aad9190613947565b93505050505b604051630d1d697560e31b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116916368eb4ba891611b25917f0000000000000000000000000000000000000000000000000000000000000000918716908690600401613d6c565b600060405180830381600087803b158015611b3f57600080fd5b505af1158015611b53573d6000803e3d6000fd5b5050604051632770a7eb60e21b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169250639dc29fac9150611ba59085908590600401613d53565b600060405180830381600087803b158015611bbf57600080fd5b505af1158015611bd3573d6000803e3d6000fd5b505050505b5050565b6001600160a01b03811660009081526084602052604090205460ff16611c145760405162461bcd60e51b81526004016101869061403e565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d7ac71ff6040518163ffffffff1660e01b815260040160206040518083038186803b158015611c6f57600080fd5b505afa158015611c83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca79190613bba565b9050604083013560608401356080850135600019831415611d65576040516320a8bee760e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906382a2fb9c90611d109087908c9060040161421d565b602060405180830381600087803b158015611d2a57600080fd5b505af1158015611d3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d629190613bba565b92505b600019821415611e12576040516320a8bee760e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906382a2fb9c90611dbd9087908b9060040161421d565b602060405180830381600087803b158015611dd757600080fd5b505af1158015611deb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0f9190613bba565b91505b600019811415611ebf576040516320a8bee760e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906382a2fb9c90611e6a908790899060040161421d565b602060405180830381600087803b158015611e8457600080fd5b505af1158015611e98573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ebc9190613bba565b90505b6000611f4b8760200135876001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611ef59190613c81565b60206040518083038186803b158015611f0d57600080fd5b505afa158015611f21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f459190613bba565b906130f9565b9050600080821561200657604051635d5155ef60e11b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063baa2abde90611faf908e908e908890600090819030904290600401613caf565b6040805180830381600087803b158015611fc857600080fd5b505af1158015611fdc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120009190613bd2565b90925090505b60006120168760a08c0135613121565b905060006120288760c08d0135613121565b9050818410801561203857508083115b156121575760408051600280825260608083018452926020830190803683370190505090508c8e8260008151811061206c57fe5b602002602001018360018151811061208057fe5b6001600160a01b0393841660209182029290920101529181169091527f000000000000000000000000000000000000000000000000000000000000000016638803dbee6120cd85886130f9565b6120d787866130f9565b8430426040518663ffffffff1660e01b81526004016120fa959493929190614234565b600060405180830381600087803b15801561211457600080fd5b505af1158015612128573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526121509190810190613a71565b5050612280565b818411801561216557508083105b156122805760408051600280825260608083018452926020830190803683370190505090508d8d8260008151811061219957fe5b60200260200101836001815181106121ad57fe5b6001600160a01b0393841660209182029290920101529181169091527f000000000000000000000000000000000000000000000000000000000000000016638803dbee6121fa84876130f9565b61220488876130f9565b8430426040518663ffffffff1660e01b8152600401612227959493929190614234565b600060405180830381600087803b15801561224157600080fd5b505af1158015612255573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227d9190810190613a71565b50505b61228a8d89613146565b6122948c88613146565b61229e8a87613146565b6040516370a0823160e01b815260a08c0135906001600160a01b038f16906370a08231906122d0903090600401613c81565b60206040518083038186803b1580156122e857600080fd5b505afa1580156122fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123209190613bba565b101561232b57600080fd5b6040516370a0823160e01b815260c08c0135906001600160a01b038e16906370a082319061235d903090600401613c81565b60206040518083038186803b15801561237557600080fd5b505afa158015612389573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123ad9190613bba565b10156123b857600080fd5b6040516370a0823160e01b815260208c0135906001600160a01b038c16906370a08231906123ea903090600401613c81565b60206040518083038186803b15801561240257600080fd5b505afa158015612416573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061243a9190613bba565b101561244557600080fd5b61244d612d60565b6124568d6124ee565b61245f8c6124ee565b6124688a6124ee565b50505050505050505050505050565b6001600160a01b0380831660009081526041602090815260408083209385168352929052205460ff16611bd8576124ba6001600160a01b038316826000196118ee565b6001600160a01b038083166000908152604160209081526040808320938516835292905220805460ff191660011790555050565b6040516370a0823160e01b81526000906001600160a01b038316906370a082319061251d903090600401613c81565b60206040518083038186803b15801561253557600080fd5b505afa158015612549573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061256d9190613bba565b90508015611bd857611bd87f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663630dc7cb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156125d157600080fd5b505afa1580156125e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126099190613704565b6001600160a01b03841690836131c4565b6001600160a01b03811660009081526084602052604090205460ff166126525760405162461bcd60e51b81526004016101869061403e565b61265a6131e3565b61266584833561325a565b61267383836020013561325a565b61268181836040013561325a565b61268f8483606001356132ae565b61269d8383608001356132ae565b6126ab818360a001356132ae565b6000806000866001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016126dc9190613c81565b60206040518083038186803b1580156126f457600080fd5b505afa158015612708573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061272c9190613bba565b90506000866001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161275c9190613c81565b60206040518083038186803b15801561277457600080fd5b505afa158015612788573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127ac9190613bba565b9050600080896001600160a01b0316876001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b1580156127f457600080fd5b505afa158015612808573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282c9190613704565b6001600160a01b031614156128c257866001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561287457600080fd5b505afa158015612888573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128ac9190613b66565b506001600160701b039182169350169050612945565b866001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b1580156128fb57600080fd5b505afa15801561290f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129339190613b66565b506001600160701b0390811693501690505b61295184848484613302565b90965094505084159250612a769150505760408051600280825260608083018452926020830190803683370190505090508161298e578686612991565b85875b8260008151811061299e57fe5b60200260200101836001815181106129b257fe5b6001600160a01b0393841660209182029290920101529181169091526040516338ed173960e01b81527f0000000000000000000000000000000000000000000000000000000000000000909116906338ed173990612a1d908690600090869030904290600401614234565b600060405180830381600087803b158015612a3757600080fd5b505af1158015612a4b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612a739190810190613a71565b50505b6040516370a0823160e01b81526000906001600160a01b038816906370a0823190612aa5903090600401613c81565b60206040518083038186803b158015612abd57600080fd5b505afa158015612ad1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612af59190613bba565b90506000866001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401612b259190613c81565b60206040518083038186803b158015612b3d57600080fd5b505afa158015612b51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b759190613bba565b90506000821180612b865750600081115b15610ea95760405162e8e33760e81b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e8e3370090612bec908b908b908790879060c08e01359060e08f01359030904290600401613cef565b606060405180830381600087803b158015612c0657600080fd5b505af1158015612c1a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115919190613bf5565b8015611bd857612c6e827f0000000000000000000000000000000000000000000000000000000000000000612477565b6040516340c10f1960e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906340c10f1990612cbc9085908590600401613d53565b600060405180830381600087803b158015612cd657600080fd5b505af1158015612cea573d6000803e3d6000fd5b505060405163314568d960e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116935063314568d99250611ba5917f0000000000000000000000000000000000000000000000000000000000000000918716908690600401613d6c565b6040516370a0823160e01b81526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190612daf903090600401613c81565b602060405180830381600087803b158015612dc957600080fd5b505af1158015612ddd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e019190613bba565b90508015612fa657604051632e1a7d4d60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690632e1a7d4d90612e55908490600401614214565b600060405180830381600087803b158015612e6f57600080fd5b505af1158015612e83573d6000803e3d6000fd5b5050505060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663630dc7cb6040518163ffffffff1660e01b815260040160206040518083038186803b158015612ee257600080fd5b505afa158015612ef6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f1a9190613704565b604080516000815260208101918290526001600160a01b0392909216918491612f439190613c65565b60006040518083038185875af1925050503d8060008114612f80576040519150601f19603f3d011682016040523d82523d6000602084013e612f85565b606091505b5050905080611bd85760405162461bcd60e51b815260040161018690613de0565b50565b6060612ffe826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166119f39092919063ffffffff16565b8051909150156119e8578080602001905181019061301c9190613b22565b6119e85760405162461bcd60e51b815260040161018690614174565b60608247101561305a5760405162461bcd60e51b815260040161018690613f2d565b613063856119ed565b61307f5760405162461bcd60e51b81526004016101869061410f565b60006060866001600160a01b0316858760405161309c9190613c65565b60006040518083038185875af1925050503d80600081146130d9576040519150601f19603f3d011682016040523d82523d6000602084013e6130de565b606091505b50915091506130ee828286613351565b979650505050505050565b60008282111561311b5760405162461bcd60e51b815260040161018690613ef6565b50900390565b60008282018381101561063e5760405162461bcd60e51b815260040161018690613e88565b8015611bd857613176827f0000000000000000000000000000000000000000000000000000000000000000612477565b604051630450cfaf60e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906322867d7890611ba59085908590600401613d53565b6119e88363a9059cbb60e01b84846040516024016119b1929190613d53565b3415613258577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b15801561324457600080fd5b505af115801561180b573d6000803e3d6000fd5b565b8015611bd85760405163246b5de160e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906348d6bbc290611ba59085908590600401613d53565b8015611bd857604051634b8a352960e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690634b8a352990611ba59085908590600401613d53565b60008061330f858561338a565b613319878561338a565b106133355761332a868686866133c4565b915060009050613348565b613341858785876133c4565b9150600190505b94509492505050565b60608315613360575081611a05565b8251156133705782518084602001fd5b8160405162461bcd60e51b81526004016101869190613dad565b60008261339957506000610641565b828202828482816133a657fe5b041461063e5760405162461bcd60e51b8152600401610186906140ac565b60006133d0848461338a565b6133da868461338a565b10156133f85760405162461bcd60e51b8152600401610186906140ed565b6103e560006134096107cd8661338a565b9050600061342461341a888861338a565b611f458a8861338a565b905060006134518761344b6134398b8a613121565b613445866103e861338a565b906134be565b9061338a565b90506000613464600461344b878561338a565b9050600061348461347f83613479888061338a565b90613121565b6134f0565b9050600061349282876130f9565b905060006134a188600261338a565b90506134ad82826134be565b9d9c50505050505050505050505050565b60008082116134df5760405162461bcd60e51b815260040161018690613f73565b8183816134e857fe5b049392505050565b6000816134ff57506000610432565b816001600160801b82106135185760809190911c9060401b5b6801000000000000000082106135335760409190911c9060201b5b640100000000821061354a5760209190911c9060101b5b62010000821061355f5760109190911c9060081b5b61010082106135735760089190911c9060041b5b601082106135865760049190911c9060021b5b600882106135925760011b5b600181858161359d57fe5b048201901c905060018185816135af57fe5b048201901c905060018185816135c157fe5b048201901c905060018185816135d357fe5b048201901c905060018185816135e557fe5b048201901c905060018185816135f757fe5b048201901c9050600181858161360957fe5b048201901c9050600081858161361b57fe5b04905080821061362b578061362d565b815b95945050505050565b60008083601f840112613647578182fd5b50813567ffffffffffffffff81111561365e578182fd5b602083019150836020808302850101111561367857600080fd5b9250929050565b60008083601f840112613690578182fd5b50813567ffffffffffffffff8111156136a7578182fd5b60208301915083602082850101111561367857600080fd5b600061010082840312156136d1578081fd5b50919050565b600060e082840312156136d1578081fd5b6000602082840312156136f9578081fd5b813561063e816142f1565b600060208284031215613715578081fd5b815161063e816142f1565b60008060408385031215613732578081fd5b823561373d816142f1565b9150602083013561374d816142f1565b809150509250929050565b60008060008060008060008060a0898b031215613773578384fd5b883561377e816142f1565b9750602089013561378e816142f1565b9650604089013567ffffffffffffffff808211156137aa578586fd5b6137b68c838d01613636565b909850965060608b01359150808211156137ce578586fd5b6137da8c838d01613636565b909650945060808b01359150808211156137f2578384fd5b506137ff8b828c0161367f565b999c989b5096995094979396929594505050565b60008060006101408486031215613828578283fd5b8335613833816142f1565b92506020840135613843816142f1565b915061385285604086016136bf565b90509250925092565b6000806000806101608587031215613871578384fd5b843561387c816142f1565b9350602085013561388c816142f1565b925061389b86604087016136bf565b91506101408501356138ac816142f1565b939692955090935050565b600080600061012084860312156138cc578283fd5b83356138d7816142f1565b925060208401356138e7816142f1565b915061385285604086016136d7565b600080600080610140858703121561390c578384fd5b8435613917816142f1565b93506020850135613927816142f1565b925061393686604087016136d7565b91506101208501356138ac816142f1565b6000806000806080858703121561395c578182fd5b8451613967816142f1565b6020860151909450613978816142f1565b6040860151606090960151949790965092505050565b60008060008060008060a087890312156139a6578384fd5b86356139b1816142f1565b955060208701356139c1816142f1565b94506040870135935060608701359250608087013567ffffffffffffffff8111156139ea578283fd5b6139f689828a0161367f565b979a9699509497509295939492505050565b60008060008060408587031215613a1d578182fd5b843567ffffffffffffffff80821115613a34578384fd5b613a4088838901613636565b90965094506020870135915080821115613a58578384fd5b50613a6587828801613636565b95989497509550505050565b60006020808385031215613a83578182fd5b825167ffffffffffffffff811115613a99578283fd5b8301601f81018513613aa9578283fd5b8051613abc613ab7826142a5565b61427e565b8181528381019083850185840285018601891015613ad8578687fd5b8694505b83851015613afa578051835260019490940193918501918501613adc565b50979650505050505050565b600060208284031215613b17578081fd5b813561063e81614306565b600060208284031215613b33578081fd5b815161063e81614306565b600060208284031215613b4f578081fd5b81356001600160e01b03198116811461063e578182fd5b600080600060608486031215613b7a578081fd5b8351613b8581614314565b6020850151909350613b9681614314565b604085015190925063ffffffff81168114613baf578182fd5b809150509250925092565b600060208284031215613bcb578081fd5b5051919050565b60008060408385031215613be4578182fd5b505080516020909101519092909150565b600080600060608486031215613c09578081fd5b8351925060208401519150604084015190509250925092565b6000815180845260208085019450808401835b83811015613c5a5781516001600160a01b031687529582019590820190600101613c35565b509495945050505050565b60008251613c778184602087016142c5565b9190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b039788168152958716602087015260408601949094526060850192909252608084015290921660a082015260c081019190915260e00190565b6001600160a01b039889168152968816602088015260408701959095526060860193909352608085019190915260a084015290921660c082015260e08101919091526101000190565b6001600160a01b039290921682521515602082015260400190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b901515815260200190565b6001600160e01b031991909116815260200190565b6000602082528251806020840152613dcc8160408501602087016142c5565b601f01601f19169190910160400192915050565b6020808252601190820152701c99599d5b99081155120819985a5b1959607a1b604082015260600190565b60208082526026908201527f636f6c6c61746572616c20746f6b656e202620777374616b696e67206d69736d604082015265185d18da195960d21b606082015260800190565b60208082526018908201527f6e6f74207468652070656e64696e6720676f7665726e6f720000000000000000604082015260600190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b6020808252601b908201527f6f7261636c65206e6f7420737570706f7274206c7020746f6b656e0000000000604082015260600190565b6020808252601e908201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604082015260600190565b60208082526026908201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6040820152651c8818d85b1b60d21b606082015260800190565b6020808252601a908201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604082015260600190565b60208082526010908201526f3737ba103a34329033b7bb32b93737b960811b604082015260600190565b60208082526025908201527f6c70546f6b656e732026207374617475736573206c656e677468206d69736d616040820152641d18da195960da1b606082015260800190565b6020808252600b908201526a3737903638103a37b5b2b760a91b604082015260600190565b60208082526018908201527f6c7020746f6b656e206e6f742077686974656c69737465640000000000000000604082015260600190565b60208082526017908201527f455448206d75737420636f6d652066726f6d2057455448000000000000000000604082015260600190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b60208082526008908201526714995d995c9cd95960c21b604082015260600190565b6020808252601d908201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604082015260600190565b602080825260149082015273696e636f727265637420756e6465726c79696e6760601b604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b60208082526036908201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60408201527520746f206e6f6e2d7a65726f20616c6c6f77616e636560501b606082015260800190565b90815260200190565b9182526001600160a01b0316602082015260400190565b600086825285602083015260a0604083015261425360a0830186613c22565b6001600160a01b0394909416606083015250608001529392505050565b918252602082015260400190565b60405181810167ffffffffffffffff8111828210171561429d57600080fd5b604052919050565b600067ffffffffffffffff8211156142bb578081fd5b5060209081020190565b60005b838110156142e05781810151838201526020016142c8565b838111156104715750506000910152565b6001600160a01b0381168114612fa657600080fd5b8015158114612fa657600080fd5b6001600160701b0381168114612fa657600080fdfea264697066735822122046adae57f08fbc9888db207a215123f64c98325d795d2b4a08708672875421a464736f6c634300060c0033",
  "deployedSourceMap": "517:12686:45:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4438:10:41;-1:-1:-1;;;;;4452:4:41;4438:18;;4430:54;;;;-1:-1:-1;;;4430:54:41;;;;;;;:::i;:::-;;;;;;;;;517:12686:45;;;;;965:148:1;;;;;;;;;;-1:-1:-1;965:148:1;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;321:23:17;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;10913:328:45:-;;;;;;;;;;-1:-1:-1;10913:328:45;;;;;:::i;:::-;;:::i;1261:472::-;;;;;;;;;;-1:-1:-1;1261:472:45;;;;;:::i;:::-;;:::i;544:29:41:-;;;;;;;;;;;;;:::i;12388:813:45:-;;;;;;;;;;-1:-1:-1;12388:813:45;;;;;:::i;:::-;;:::i;168:51:46:-;;;;;;;;;;-1:-1:-1;168:51:46;;;;;:::i;:::-;;:::i;509:31:41:-;;;;;;;;;;;;;:::i;752:60:45:-;;;;;;;;;;-1:-1:-1;752:60:45;;;;;:::i;:::-;;:::i;478:27:41:-;;;;;;;;;;;;;:::i;11469:792:45:-;;;;;;;;;;-1:-1:-1;11469:792:45;;;;;:::i;:::-;;:::i;502:273:50:-;;;;;;;;;;-1:-1:-1;502:273:50;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;622:42:45:-;;;;;;;;;;;;;:::i;5694:437::-;;;;;;:::i;:::-;;:::i;6397:1316::-;;;;;;:::i;:::-;;:::i;373:30:17:-;;;;;;;;;;;;;:::i;1234:210::-;;;;;;;;;;;;;:::i;570:438:46:-;;;;;;;;;;-1:-1:-1;570:438:46;;;;;:::i;:::-;;:::i;981:163:17:-;;;;;;;;;;-1:-1:-1;981:163:17;;;;;:::i;:::-;;:::i;259:239:50:-;;;;;;;;;;-1:-1:-1;259:239:50;;;;;:::i;:::-;;:::i;578:60:41:-;;;;;;;;;;-1:-1:-1;578:60:41;;;;;:::i;:::-;;:::i;687:42:45:-;;;;;;;;;;;;;:::i;965:148:1:-;-1:-1:-1;;;;;;1073:33:1;;1050:4;1073:33;;;;;;;;;;;;;965:148;;;;:::o;321:23:17:-;;;;;;-1:-1:-1;;;;;321:23:17;;:::o;10913:328:45:-;11034:10;11047:33;11065:6;11073;11047:17;:33::i;:::-;11034:46;-1:-1:-1;11117:35:45;11034:46;11138:13;;11117:16;:35::i;:::-;11188:48;11212:6;11220;11228:3;11233:2;11188:23;:48::i;:::-;10913:328;;;;:::o;1261:472::-;-1:-1:-1;;;;;1364:13:45;;;1336:7;1364:13;;;:5;:13;;;;;;;;:21;;;;;;;;;;;1336:7;;1364:21;1395:16;1391:323;;1426:31;;-1:-1:-1;;;1426:31:45;;-1:-1:-1;;;;;1426:7:45;:15;;;;:31;;1442:6;;1450;;1426:31;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1421:36;-1:-1:-1;;;;;;1473:16:45;;1465:40;;;;-1:-1:-1;;;1465:40:45;;;;;;;:::i;:::-;1513:38;1527:6;1543;1513:13;:38::i;:::-;1559;1573:6;1589;1559:13;:38::i;:::-;1605:34;1619:2;1631:6;1605:13;:34::i;:::-;-1:-1:-1;;;;;1647:13:45;;;;;;;:5;:13;;;;;;;;:21;;;;;;;;;;:26;;;;;-1:-1:-1;;;;;;1647:26:45;;;;;;;;1681:13;;;;;;:21;;;;;;;;;:26;;;;;;;;1391:323;1726:2;-1:-1:-1;1261:472:45;;;;;:::o;544:29:41:-;;;:::o;12388:813:45:-;12453:14;12487:8;-1:-1:-1;;;;;12470:33:45;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12453:52;;12514:17;12533:11;12550:4;-1:-1:-1;;;;;12550:27:45;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12511:68;;;;;;12585:10;12615:8;-1:-1:-1;;;;;12598:45:45;;12644:6;12598:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12665:23:45;;;;;;:19;:23;;;;;;12585:66;;-1:-1:-1;12665:23:45;;12657:60;;;;-1:-1:-1;;;12657:60:45;;;;;;;:::i;:::-;12744:8;-1:-1:-1;;;;;12731:21:45;:9;-1:-1:-1;;;;;12731:21:45;;12723:72;;;;-1:-1:-1;;;12723:72:45;;;;;;;:::i;:::-;12832:47;;-1:-1:-1;;;12832:47:45;;-1:-1:-1;;;;;12832:4:45;:19;;;;:47;;12852:8;;12862:6;;-1:-1:-1;;12875:2:45;12832:47;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12885:49:45;;-1:-1:-1;;;12885:49:45;;-1:-1:-1;;;;;12885:31:45;;;-1:-1:-1;12885:31:45;;-1:-1:-1;12885:49:45;;12917:6;;-1:-1:-1;;12930:2:45;12885:49;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;12980:35:45;;-1:-1:-1;;;12980:35:45;;12966:11;;-1:-1:-1;;;;;12980:20:45;;;;;:35;;13009:4;;12980:35;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12966:49;;13021:27;13035:2;13039:8;13021:13;:27::i;:::-;13064:39;;-1:-1:-1;;;13064:39:45;;13054:7;;-1:-1:-1;;;;;13064:31:45;;;;;:39;;13096:6;;13064:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13109:40;;-1:-1:-1;;;13109:40:45;;13054:49;;-1:-1:-1;;;;;;13109:4:45;:18;;;;:40;;13128:8;;13054:49;;13142:6;;13109:40;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13180:16;13189:6;13180:8;:16::i;:::-;12388:813;;;;;;;:::o;168:51:46:-;;;;;;;;;;;;;;;:::o;509:31:41:-;;;:::o;752:60:45:-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;752:60:45;;:::o;478:27:41:-;;;:::o;11469:792:45:-;11621:10;11634:33;11652:6;11660;11634:17;:33::i;:::-;11621:46;;11676:17;11695:11;11712:4;-1:-1:-1;;;;;11712:27:45;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11673:68;;;;;;11747:14;11781:8;-1:-1:-1;;;;;11764:33:45;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11747:52;;11902:2;-1:-1:-1;;;;;11844:60:45;11861:9;-1:-1:-1;;;;;11844:46:45;;11891:6;11844:54;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;11844:60:45;;11836:93;;;;-1:-1:-1;;;11836:93:45;;;;;;;:::i;:::-;11956:8;-1:-1:-1;;;;;11943:21:45;:9;-1:-1:-1;;;;;11943:21:45;;11935:72;;;;-1:-1:-1;;;11935:72:45;;;;;;;:::i;:::-;12013:52;;-1:-1:-1;;;12013:52:45;;-1:-1:-1;;;;;12013:4:45;:19;;;;:52;;12033:8;;12043:6;;12051:13;;;12013:52;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12071:54:45;;-1:-1:-1;;;12071:54:45;;-1:-1:-1;;;;;12071:31:45;;;-1:-1:-1;12071:31:45;;-1:-1:-1;12071:54:45;;12103:6;;12111:13;;;12071:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12161:48;12185:6;12193;12201:3;12206:2;12161:23;:48::i;:::-;12240:16;12249:6;12240:8;:16::i;:::-;11469:792;;;;;;;;:::o;502:273:50:-;-1:-1:-1;;;502:273:50;;;;;;;;;;:::o;622:42:45:-;;;:::o;5694:437::-;5815:10;5828:33;5846:6;5854;5828:17;:33::i;:::-;5815:46;;5893:45;5914:6;5922;5930:3;5935:2;5893:20;:45::i;:::-;5970:56;5986:2;5997;-1:-1:-1;;;;;5990:20:45;;6019:4;5990:35;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5970:15;:56::i;:::-;6069:13;:11;:13::i;:::-;6088:16;6097:6;6088:8;:16::i;:::-;6110;6119:6;6110:8;:16::i;6397:1316::-;6549:10;6562:33;6580:6;6588;6562:17;:33::i;:::-;6549:46;;6601:14;6635:8;-1:-1:-1;;;;;6618:33:45;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6601:52;;6686:45;6707:6;6715;6723:3;6728:2;6686:20;:45::i;:::-;6771:17;6790:11;6803:13;6820:4;-1:-1:-1;;;;;6820:27:45;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6768:81;;-1:-1:-1;6768:81:45;-1:-1:-1;6768:81:45;-1:-1:-1;;6859:12:45;;6855:318;;6947:2;-1:-1:-1;;;;;6889:60:45;6906:9;-1:-1:-1;;;;;6889:46:45;;6936:6;6889:54;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;6889:60:45;;6881:93;;;;-1:-1:-1;;;6881:93:45;;;;;;;:::i;:::-;7003:8;-1:-1:-1;;;;;6990:21:45;:9;-1:-1:-1;;;;;6990:21:45;;6982:72;;;;-1:-1:-1;;;6982:72:45;;;;;;;:::i;:::-;7062:47;;-1:-1:-1;;;7062:47:45;;-1:-1:-1;;;;;7062:4:45;:19;;;;:47;;7082:8;;7092:6;;7100:8;;7062:47;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7117:49:45;;-1:-1:-1;;;7117:49:45;;-1:-1:-1;;;;;7117:31:45;;;-1:-1:-1;7117:31:45;;-1:-1:-1;7117:49:45;;7149:6;;7157:8;;7117:49;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6855:318;7204:27;7218:2;7222:8;7204:13;:27::i;:::-;7251:35;;-1:-1:-1;;;7251:35:45;;7237:11;;-1:-1:-1;;;;;7251:20:45;;;;;:35;;7280:4;;7251:35;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7237:49;;7292:7;7319:8;-1:-1:-1;;;;;7302:31:45;;7334:6;7302:39;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7352:73;;-1:-1:-1;;;7352:73:45;;7292:49;;-1:-1:-1;;;;;;7352:43:45;;;;;:73;;7404:4;;7419;;7352:73;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7347:160;;7435:65;;-1:-1:-1;;;7435:65:45;;-1:-1:-1;;;;;7435:44:45;;;;;:65;;7488:4;;7495;;7435:65;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7347:160;7512:49;;-1:-1:-1;;;7512:49:45;;-1:-1:-1;;;;;7512:4:45;:18;;;;:49;;7539:8;;7550:2;;7554:6;;7512:49;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7604:13;:11;:13::i;:::-;7623:16;7632:6;7623:8;:16::i;:::-;7645;7654:6;7645:8;:16::i;:::-;7692;7701:6;7692:8;:16::i;:::-;6397:1316;;;;;;;;;;;:::o;373:30:17:-;;;-1:-1:-1;;;;;373:30:17;;:::o;1234:210::-;1297:15;;-1:-1:-1;;;;;1297:15:17;1283:10;:29;1275:66;;;;-1:-1:-1;;;1275:66:17;;;;;;;:::i;:::-;1347:15;:28;;-1:-1:-1;;;;;;1347:28:17;;;1381:8;:21;;-1:-1:-1;;;;;;1381:21:17;1392:10;1381:21;;;;;;;;;;1413:26;;;;;;;:::i;:::-;;;;;;;;1234:210::o;570:438:46:-;566:8:17;;;;;-1:-1:-1;;;;;566:8:17;552:10;:22;544:51;;;;-1:-1:-1;;;544:51:17;;;;;;;:::i;:::-;696:34:46;;::::1;688:84;;;;-1:-1:-1::0;;;688:84:46::1;;;;;;;:::i;:::-;783:8;778:226;797:21:::0;;::::1;778:226;;;839:8;;848:3;839:13;;;;;;;;;;;;;;;;;;;;:::i;:::-;835:105;;;872:4;-1:-1:-1::0;;;;;872:12:46::1;;885:8;;894:3;885:13;;;;;;;;;;;;;;;;;;;;:::i;:::-;872:27;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;864:67;;;;-1:-1:-1::0;;;864:67:46::1;;;;;;;:::i;:::-;984:8;;993:3;984:13;;;;;;;;;;;;;;;;;;;;:::i;:::-;947:19;:34;967:8;;976:3;967:13;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;947:34:46::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;947:34:46;:50;;-1:-1:-1;;947:50:46::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;820:5:46::1;778:226;;;;570:438:::0;;;;:::o;981:163:17:-;566:8;;;;;-1:-1:-1;;;;;566:8:17;552:10;:22;544:51;;;;-1:-1:-1;;;544:51:17;;;;;;;:::i;:::-;1058:15:::1;:34:::0;;-1:-1:-1;;;;;;1058:34:17::1;-1:-1:-1::0;;;;;1058:34:17;::::1;;::::0;;1103:36:::1;::::0;::::1;::::0;::::1;::::0;1058:34;;1103:36:::1;:::i;:::-;;;;;;;;981:163:::0;:::o;259:239:50:-;-1:-1:-1;;;259:239:50;;;;;;;;:::o;578:60:41:-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;687:42:45:-;;;:::o;1348:613:13:-;1713:10;;;1712:62;;-1:-1:-1;1729:39:13;;-1:-1:-1;;;1729:39:13;;-1:-1:-1;;;;;1729:15:13;;;;;:39;;1753:4;;1760:7;;1729:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:44;1712:62;1704:150;;;;-1:-1:-1;;;1704:150:13;;;;;;;:::i;:::-;1864:90;1884:5;1914:22;;;1938:7;1947:5;1891:62;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1891:62:13;;;;;;;;;;;;;;-1:-1:-1;;;;;1891:62:13;-1:-1:-1;;;;;;1891:62:13;;;;;;;;;;1864:19;:90::i;:::-;1348:613;;;:::o;726:413:14:-;1086:20;1124:8;;;726:413::o;3581:193::-;3684:12;3715:52;3737:6;3745:4;3751:1;3754:12;3715:21;:52::i;:::-;3708:59;;3581:193;;;;;;:::o;4031:291:41:-;4104:10;;4100:218;;-1:-1:-1;;4128:6:41;:18;4124:89;;;4175:4;-1:-1:-1;;;;;4175:27:41;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4158:46;-1:-1:-1;;;;4124:89:41;4220:57;;-1:-1:-1;;;4220:57:41;;-1:-1:-1;;;;;4220:4:41;:19;;;;;:57;;4248:6;;4257:11;;;4270:6;;4220:57;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4285:26:41;;-1:-1:-1;;;4285:26:41;;-1:-1:-1;;;;;4285:6:41;:11;;-1:-1:-1;4285:11:41;;-1:-1:-1;4285:26:41;;4297:5;;4304:6;;4285:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4100:218;4031:291;;:::o;8297:2364:45:-;-1:-1:-1;;;;;8444:23:45;;;;;;:19;:23;;;;;;;;8436:60;;;;-1:-1:-1;;;8436:60:45;;;;;;;:::i;:::-;8502:15;8520:4;-1:-1:-1;;;;;8520:16:45;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8502:36;-1:-1:-1;8562:13:45;;;;8598;;;;8635:14;;;;-1:-1:-1;;8725:21:45;;8721:99;;;8768:45;;-1:-1:-1;;;8768:45:45;;-1:-1:-1;;;;;8768:4:45;:25;;;;:45;;8794:10;;8806:6;;8768:45;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8756:57;;8721:99;-1:-1:-1;;8829:9:45;:21;8825:99;;;8872:45;;-1:-1:-1;;;8872:45:45;;-1:-1:-1;;;;;8872:4:45;:25;;;;:45;;8898:10;;8910:6;;8872:45;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8860:57;;8825:99;-1:-1:-1;;8933:10:45;:22;8929:97;;;8978:41;;-1:-1:-1;;;8978:41:45;;-1:-1:-1;;;;;8978:4:45;:25;;;;:41;;9004:10;;9016:2;;8978:41;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8965:54;;8929:97;9076:18;9097:58;9137:3;:17;;;9104:2;-1:-1:-1;;;;;9097:20:45;;9126:4;9097:35;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:39;;:58::i;:::-;9076:79;-1:-1:-1;9189:9:45;;9223:17;;9219:208;;9265:155;;-1:-1:-1;;;9265:155:45;;-1:-1:-1;;;;;9265:6:45;:22;;;;:155;;9297:6;;9313;;9329:13;;9352:1;;;;9382:4;;9397:15;;9265:155;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9250:170;;-1:-1:-1;9250:170:45;-1:-1:-1;9219:208:45;9459:16;9478:26;:9;9492:11;;;;9478:13;:26::i;:::-;9459:45;-1:-1:-1;9510:16:45;9529:26;:9;9543:11;;;;9529:13;:26::i;:::-;9510:45;;9573:11;9566:4;:18;:40;;;;;9595:11;9588:4;:18;9566:40;9562:640;;;9640:16;;;9654:1;9640:16;;;9616:21;9640:16;;;;;9616:21;9640:16;;;;;;;;;;-1:-1:-1;9640:16:45;9616:40;;9686:6;9694;9665:4;9670:1;9665:7;;;;;;;;;;;;;9674:4;9679:1;9674:7;;;;;;;;-1:-1:-1;;;;;9664:37:45;;;9674:7;;;;;;;;;9664:37;;;;;;;9709:6;:31;;9750:21;:11;9766:4;9750:15;:21::i;:::-;9781;:4;9790:11;9781:8;:21::i;:::-;9812:4;9834;9849:15;9709:163;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9709:163:45;;;;;;;;;;;;:::i;:::-;;9562:640;;;;9896:11;9889:4;:18;:40;;;;;9918:11;9911:4;:18;9889:40;9885:317;;;9963:16;;;9977:1;9963:16;;;9939:21;9963:16;;;;;9939:21;9963:16;;;;;;;;;;-1:-1:-1;9963:16:45;9939:40;;10009:6;10017;9988:4;9993:1;9988:7;;;;;;;;;;;;;9997:4;10002:1;9997:7;;;;;;;;-1:-1:-1;;;;;9987:37:45;;;9997:7;;;;;;;;;9987:37;;;;;;;10032:6;:31;;10073:21;:11;10089:4;10073:15;:21::i;:::-;10104;:4;10113:11;10104:8;:21::i;:::-;10135:4;10157;10172:15;10032:163;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10032:163:45;;;;;;;;;;;;:::i;:::-;;9885:317;;10224:26;10232:6;10240:9;10224:7;:26::i;:::-;10256;10264:6;10272:9;10256:7;:26::i;:::-;10288:23;10296:2;10300:10;10288:7;:23::i;:::-;10353:39;;-1:-1:-1;;;10353:39:45;;10396:11;;;;;-1:-1:-1;;;;;10353:24:45;;;;;:39;;10386:4;;10353:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:54;;10345:63;;;;;;10422:39;;-1:-1:-1;;;10422:39:45;;10465:11;;;;;-1:-1:-1;;;;;10422:24:45;;;;;:39;;10455:4;;10422:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:54;;10414:63;;;;;;10491:35;;-1:-1:-1;;;10491:35:45;;10530:17;;;;;-1:-1:-1;;;;;10491:20:45;;;;;:35;;10520:4;;10491:35;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:56;;10483:65;;;;;;10581:13;:11;:13::i;:::-;10600:16;10609:6;10600:8;:16::i;:::-;10622;10631:6;10622:8;:16::i;:::-;10644:12;10653:2;10644:8;:12::i;:::-;8297:2364;;;;;;;;;;;;;:::o;1230:203:41:-;-1:-1:-1;;;;;1305:15:41;;;;;;;:8;:15;;;;;;;;:24;;;;;;;;;;;;1300:129;;1339:44;-1:-1:-1;;;;;1339:25:41;;1365:7;-1:-1:-1;;1339:25:41;:44::i;:::-;-1:-1:-1;;;;;1391:15:41;;;;;;;:8;:15;;;;;;;;:24;;;;;;;;;:31;;-1:-1:-1;;1391:31:41;1418:4;1391:31;;;1230:203;;:::o;2164:195::-;2227:38;;-1:-1:-1;;;2227:38:41;;2212:12;;-1:-1:-1;;;;;2227:23:41;;;;;:38;;2259:4;;2227:38;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2212:53;-1:-1:-1;2275:11:41;;2271:84;;2296:52;2323:4;-1:-1:-1;;;;;2323:13:41;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;2296:26:41;;;2340:7;2296:26;:52::i;3807:1651:45:-;-1:-1:-1;;;;;3946:23:45;;;;;;:19;:23;;;;;;;;3938:60;;;;-1:-1:-1;;;3938:60:45;;;;;;;:::i;:::-;4038:15;:13;:15::i;:::-;4059:32;4070:6;4078:12;;4059:10;:32::i;:::-;4097;4108:6;4116:3;:12;;;4097:10;:32::i;:::-;4135:29;4146:2;4150:3;:13;;;4135:10;:29::i;:::-;4206:32;4215:6;4223:3;:14;;;4206:8;:32::i;:::-;4244;4253:6;4261:3;:14;;;4244:8;:32::i;:::-;4282:29;4291:2;4295:3;:15;;;4282:8;:29::i;:::-;4358:12;4376:15;4405:9;4424:6;-1:-1:-1;;;;;4417:24:45;;4450:4;4417:39;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4405:51;;4464:9;4483:6;-1:-1:-1;;;;;4476:24:45;;4509:4;4476:39;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4464:51;;4523:9;4540;4592:6;-1:-1:-1;;;;;4561:37:45;4576:2;-1:-1:-1;;;;;4561:25:45;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;4561:37:45;;4557:185;;;4642:2;-1:-1:-1;;;;;4627:30:45;;:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;4610:49:45;;;;-1:-1:-1;4610:49:45;;-1:-1:-1;4557:185:45;;;4716:2;-1:-1:-1;;;;;4701:30:45;;:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;4684:49:45;;;;-1:-1:-1;4684:49:45;;-1:-1:-1;4557:185:45;4773:38;4788:4;4794;4800;4806;4773:14;:38::i;:::-;4749:62;;-1:-1:-1;4749:62:45;-1:-1:-1;;4858:11:45;;;-1:-1:-1;4854:238:45;;-1:-1:-1;;4854:238:45;4903:16;;;4917:1;4903:16;;;4879:21;4903:16;;;;;4879:21;4903:16;;;;;;;;;;-1:-1:-1;4903:16:45;4879:40;;4948:10;:48;;4981:6;4989;4948:48;;;4962:6;4970;4948:48;4928:4;4933:1;4928:7;;;;;;;;;;;;;4937:4;4942:1;4937:7;;;;;;;;-1:-1:-1;;;;;4927:69:45;;;4937:7;;;;;;;;;4927:69;;;;;;;5004:81;;-1:-1:-1;;;5004:81:45;;:6;:31;;;;;;:81;;5036:7;;5045:1;;5048:4;;5062;;5069:15;;5004:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5004:81:45;;;;;;;;;;;;:::i;:::-;;4854:238;;5134:39;;-1:-1:-1;;;5134:39:45;;5122:9;;-1:-1:-1;;;;;5134:24:45;;;;;:39;;5167:4;;5134:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5122:51;;5179:9;5198:6;-1:-1:-1;;;;;5191:24:45;;5224:4;5191:39;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5179:51;;5247:1;5240:4;:8;:20;;;;5259:1;5252:4;:8;5240:20;5236:218;;;5270:177;;-1:-1:-1;;;5270:177:45;;-1:-1:-1;;;;;5270:6:45;:19;;;;:177;;5299:6;;5315;;5331:4;;5345;;5359:11;;;;;5380;;;;;5409:4;;5424:15;;5270:177;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;3635:238:41:-;3707:10;;3703:166;;3727:37;3741:5;3756:6;3727:13;:37::i;:::-;3772:26;;-1:-1:-1;;;3772:26:41;;-1:-1:-1;;;;;3772:6:41;:11;;;;:26;;3784:5;;3791:6;;3772:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3806:56:41;;-1:-1:-1;;;3806:56:41;;-1:-1:-1;;;;;3806:4:41;:18;;;-1:-1:-1;3806:18:41;;-1:-1:-1;3806:56:41;;3833:6;;3842:11;;;3855:6;;3806:56;;;:::i;2446:282::-;2499:36;;-1:-1:-1;;;2499:36:41;;2484:12;;-1:-1:-1;;;;;2505:4:41;2499:21;;;;:36;;2529:4;;2499:36;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2484:51;-1:-1:-1;2545:11:41;;2541:183;;2566:29;;-1:-1:-1;;;2566:29:41;;-1:-1:-1;;;;;2572:4:41;2566:20;;;;:29;;2587:7;;2566:29;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2604:12;2622:4;-1:-1:-1;;;;;2622:13:41;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2659:12;;;2669:1;2659:12;;;;;;;;;-1:-1:-1;;;;;2622:20:41;;;;;2650:7;;2622:50;;2659:12;2622:50;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2603:69;;;2688:7;2680:37;;;;-1:-1:-1;;;2680:37:41;;;;;;;:::i;2541:183::-;2446:282;:::o;2967:751:13:-;3386:23;3412:69;3440:4;3412:69;;;;;;;;;;;;;;;;;3420:5;-1:-1:-1;;;;;3412:27:13;;;:69;;;;;:::i;:::-;3495:17;;3386:95;;-1:-1:-1;3495:21:13;3491:221;;3635:10;3624:30;;;;;;;;;;;;:::i;:::-;3616:85;;;;-1:-1:-1;;;3616:85:13;;;;;;;:::i;4608:523:14:-;4735:12;4792:5;4767:21;:30;;4759:81;;;;-1:-1:-1;;;4759:81:14;;;;;;;:::i;:::-;4858:18;4869:6;4858:10;:18::i;:::-;4850:60;;;;-1:-1:-1;;;4850:60:14;;;;;;;:::i;:::-;4981:12;4995:23;5022:6;-1:-1:-1;;;;;5022:11:14;5042:5;5050:4;5022:33;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4980:75;;;;5072:52;5090:7;5099:10;5111:12;5072:17;:52::i;:::-;5065:59;4608:523;-1:-1:-1;;;;;;;4608:523:14:o;3136:155:4:-;3194:7;3226:1;3221;:6;;3213:49;;;;-1:-1:-1;;;3213:49:4;;;;;;;:::i;:::-;-1:-1:-1;3279:5:4;;;3136:155::o;2690:175::-;2748:7;2779:5;;;2802:6;;;;2794:46;;;;-1:-1:-1;;;2794:46:4;;;;;;;:::i;3305:163:41:-;3369:10;;3365:99;;3389:35;3403:5;3418:4;3389:13;:35::i;:::-;3432:25;;-1:-1:-1;;;3432:25:41;;-1:-1:-1;;;;;3432:4:41;:10;;;;:25;;3443:5;;3450:6;;3432:25;;;:::i;704:175:13:-;786:86;806:5;836:23;;;861:2;865:5;813:58;;;;;;;;;:::i;1516:117:41:-;1560:9;:13;1556:73;;1589:4;-1:-1:-1;;;;;1583:19:41;;1610:9;1583:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1556:73;1516:117::o;1903:126::-;1970:10;;1966:59;;1990:28;;-1:-1:-1;;;1990:28:41;;-1:-1:-1;;;;;1990:4:41;:13;;;;:28;;2004:5;;2011:6;;1990:28;;;:::i;2999:122::-;3064:10;;3060:57;;3084:26;;-1:-1:-1;;;3084:26:41;;-1:-1:-1;;;;;3084:4:41;:11;;;;:26;;3096:5;;3103:6;;3084:26;;;:::i;1983:377:45:-;2094:12;;2153:14;:4;2162;2153:8;:14::i;:::-;2135;:4;2144;2135:8;:14::i;:::-;:32;2131:225;;2187:40;2204:4;2210;2216;2222;2187:16;:40::i;:::-;2177:50;;2248:5;2235:18;;2131:225;;;2284:40;2301:4;2307;2313;2319;2284:16;:40::i;:::-;2274:50;;2345:4;2332:17;;2131:225;1983:377;;;;;;;:::o;7091:725:14:-;7206:12;7234:7;7230:580;;;-1:-1:-1;7264:10:14;7257:17;;7230:580;7375:17;;:21;7371:429;;7633:10;7627:17;7693:15;7680:10;7676:2;7672:19;7665:44;7582:145;7772:12;7765:20;;-1:-1:-1;;;7765:20:14;;;;;;;;:::i;3538:215:4:-;3596:7;3619:6;3615:20;;-1:-1:-1;3634:1:4;3627:8;;3615:20;3657:5;;;3661:1;3657;:5;:1;3680:5;;;;;:10;3672:56;;;;-1:-1:-1;;;3672:56:4;;;;;;;:::i;2668:525:45:-;2781:4;2819:14;:4;2828;2819:8;:14::i;:::-;2801;:4;2810;2801:8;:14::i;:::-;:32;;2793:53;;;;-1:-1:-1;;;2793:53:45;;;;;;;:::i;:::-;2861:3;2852:6;2879:20;2884:4;2894;2879:14;:20::i;:::-;2870:29;-1:-1:-1;2905:7:45;2915:36;2936:14;:4;2945;2936:8;:14::i;:::-;2916;:4;2925;2916:8;:14::i;2915:36::-;2905:46;-1:-1:-1;2957:6:45;2966:42;3003:4;2966:32;2983:14;:4;2992;2983:8;:14::i;:::-;2966:12;:2;2973:4;2966:6;:12::i;:::-;:16;;:32::i;:::-;:36;;:42::i;:::-;2957:51;-1:-1:-1;3014:6:45;3023:15;3036:1;3023:8;:1;2957:51;3023:5;:8::i;:15::-;3014:24;-1:-1:-1;3044:6:45;3053:32;3069:15;3014:24;3069:8;3075:1;;3069:5;:8::i;:::-;:12;;:15::i;:::-;3053;:32::i;:::-;3044:41;-1:-1:-1;3091:14:45;3108:8;3044:41;3114:1;3108:5;:8::i;:::-;3091:25;-1:-1:-1;3122:16:45;3141:8;:1;3147;3141:5;:8::i;:::-;3122:27;-1:-1:-1;3162:26:45;:9;3122:27;3162:13;:26::i;:::-;3155:33;2668:525;-1:-1:-1;;;;;;;;;;;;;2668:525:45:o;4217:150:4:-;4275:7;4306:1;4302;:5;4294:44;;;;-1:-1:-1;;;4294:44:4;;;;;;;:::i;:::-;4359:1;4355;:5;;;;;;;4217:150;-1:-1:-1;;;4217:150:4:o;753:849:51:-;798:4;814:6;810:20;;-1:-1:-1;829:1:51;822:8;;810:20;846:1;862;-1:-1:-1;;;874:41:51;;870:88;;932:3;925:10;;;;;949:2;943:8;870:88;974:19;968:2;:25;964:71;;1010:2;1003:9;;;;;1026:2;1020:8;964:71;1050:11;1044:2;:17;1040:63;;1078:2;1071:9;;;;;1094:2;1088:8;1040:63;1118:7;1112:2;:13;1108:58;;1142:2;1135:9;;;;;1158:1;1152:7;1108:58;1181:5;1175:2;:11;1171:55;;1203:1;1196:8;;;;;1218:1;1212:7;1171:55;1241:4;1235:2;:10;1231:54;;1262:1;1255:8;;;;;1277:1;1271:7;1231:54;1300:3;1294:2;:9;1290:37;;1319:1;1313:7;1290:37;1352:1;1346;1342;:5;;;;;;1338:1;:9;1337:16;;1333:20;;1378:1;1372;1368;:5;;;;;;1364:1;:9;1363:16;;1359:20;;1404:1;1398;1394;:5;;;;;;1390:1;:9;1389:16;;1385:20;;1430:1;1424;1420;:5;;;;;;1416:1;:9;1415:16;;1411:20;;1456:1;1450;1446;:5;;;;;;1442:1;:9;1441:16;;1437:20;;1482:1;1476;1472;:5;;;;;;1468:1;:9;1467:16;;1463:20;;1508:1;1502;1498;:5;;;;;;1494:1;:9;1493:16;;1489:20;;1552:7;1566:1;1562;:5;;;;;;1552:15;;1585:2;1581:1;:6;:15;;1594:2;1581:15;;;1590:1;1581:15;1573:24;753:849;-1:-1:-1;;;;;753:849:51:o;301:352:-1:-;;;431:3;424:4;416:6;412:17;408:27;398:2;;-1:-1;;439:12;398:2;-1:-1;469:20;;509:18;498:30;;495:2;;;-1:-1;;531:12;495:2;575:4;567:6;563:17;551:29;;626:3;575:4;;610:6;606:17;567:6;592:32;;589:41;586:2;;;643:1;;633:12;586:2;391:262;;;;;:::o;2574:336::-;;;2688:3;2681:4;2673:6;2669:17;2665:27;2655:2;;-1:-1;;2696:12;2655:2;-1:-1;2726:20;;2766:18;2755:30;;2752:2;;;-1:-1;;2788:12;2752:2;2832:4;2824:6;2820:17;2808:29;;2883:3;2832:4;2863:17;2824:6;2849:32;;2846:41;2843:2;;;2900:1;;2890:12;2958:160;;3070:3;3061:6;3056:3;3052:16;3048:26;3045:2;;;-1:-1;;3077:12;3045:2;-1:-1;3097:15;3038:80;-1:-1;3038:80::o;3170:165::-;;3287:3;3278:6;3273:3;3269:16;3265:26;3262:2;;;-1:-1;;3294:12;3900:241;;4004:2;3992:9;3983:7;3979:23;3975:32;3972:2;;;-1:-1;;4010:12;3972:2;85:6;72:20;97:33;124:5;97:33;:::i;4148:263::-;;4263:2;4251:9;4242:7;4238:23;4234:32;4231:2;;;-1:-1;;4269:12;4231:2;226:6;220:13;238:33;265:5;238:33;:::i;4418:366::-;;;4539:2;4527:9;4518:7;4514:23;4510:32;4507:2;;;-1:-1;;4545:12;4507:2;85:6;72:20;97:33;124:5;97:33;:::i;:::-;4597:63;-1:-1;4697:2;4736:22;;72:20;97:33;72:20;97:33;:::i;:::-;4705:63;;;;4501:283;;;;;:::o;4791:1179::-;;;;;;;;;5052:3;5040:9;5031:7;5027:23;5023:33;5020:2;;;-1:-1;;5059:12;5020:2;85:6;72:20;97:33;124:5;97:33;:::i;:::-;5111:63;-1:-1;5211:2;5250:22;;72:20;97:33;72:20;97:33;:::i;:::-;5219:63;-1:-1;5347:2;5332:18;;5319:32;5371:18;5360:30;;;5357:2;;;-1:-1;;5393:12;5357:2;5431:80;5503:7;5494:6;5483:9;5479:22;5431:80;:::i;:::-;5413:98;;-1:-1;5413:98;-1:-1;5576:2;5561:18;;5548:32;;-1:-1;5589:30;;;5586:2;;;-1:-1;;5622:12;5586:2;5660:80;5732:7;5723:6;5712:9;5708:22;5660:80;:::i;:::-;5642:98;;-1:-1;5642:98;-1:-1;5805:3;5790:19;;5777:33;;-1:-1;5819:30;;;5816:2;;;-1:-1;;5852:12;5816:2;;5890:64;5946:7;5937:6;5926:9;5922:22;5890:64;:::i;:::-;5014:956;;;;-1:-1;5014:956;;-1:-1;5014:956;;;;;;5872:82;-1:-1;;;5014:956::o;5977:548::-;;;;6143:3;6131:9;6122:7;6118:23;6114:33;6111:2;;;-1:-1;;6150:12;6111:2;85:6;72:20;97:33;124:5;97:33;:::i;:::-;6202:63;-1:-1;6302:2;6341:22;;72:20;97:33;72:20;97:33;:::i;:::-;6310:63;-1:-1;6428:81;6501:7;6410:2;6477:22;;6428:81;:::i;:::-;6418:91;;6105:420;;;;;:::o;6532:674::-;;;;;6715:3;6703:9;6694:7;6690:23;6686:33;6683:2;;;-1:-1;;6722:12;6683:2;85:6;72:20;97:33;124:5;97:33;:::i;:::-;6774:63;-1:-1;6874:2;6913:22;;72:20;97:33;72:20;97:33;:::i;:::-;6882:63;-1:-1;7000:81;7073:7;6982:2;7049:22;;7000:81;:::i;:::-;6990:91;;7118:3;7162:9;7158:22;72:20;97:33;124:5;97:33;:::i;:::-;6677:529;;;;-1:-1;6677:529;;-1:-1;;6677:529::o;7213:558::-;;;;7384:3;7372:9;7363:7;7359:23;7355:33;7352:2;;;-1:-1;;7391:12;7352:2;85:6;72:20;97:33;124:5;97:33;:::i;:::-;7443:63;-1:-1;7543:2;7582:22;;72:20;97:33;72:20;97:33;:::i;:::-;7551:63;-1:-1;7669:86;7747:7;7651:2;7723:22;;7669:86;:::i;7778:684::-;;;;;7966:3;7954:9;7945:7;7941:23;7937:33;7934:2;;;-1:-1;;7973:12;7934:2;85:6;72:20;97:33;124:5;97:33;:::i;:::-;8025:63;-1:-1;8125:2;8164:22;;72:20;97:33;72:20;97:33;:::i;:::-;8133:63;-1:-1;8251:86;8329:7;8233:2;8305:22;;8251:86;:::i;:::-;8241:96;;8374:3;8418:9;8414:22;72:20;97:33;124:5;97:33;:::i;8469:672::-;;;;;8635:3;8623:9;8614:7;8610:23;8606:33;8603:2;;;-1:-1;;8642:12;8603:2;226:6;220:13;238:33;265:5;238:33;:::i;:::-;8805:2;8855:22;;220:13;8694:74;;-1:-1;238:33;220:13;238:33;:::i;:::-;8924:2;8974:22;;3698:13;9043:2;9093:22;;;3698:13;8597:544;;8813:74;;-1:-1;8597:544;-1:-1;;;8597:544::o;9148:867::-;;;;;;;9339:3;9327:9;9318:7;9314:23;9310:33;9307:2;;;-1:-1;;9346:12;9307:2;85:6;72:20;97:33;124:5;97:33;:::i;:::-;9398:63;-1:-1;9498:2;9537:22;;72:20;97:33;72:20;97:33;:::i;:::-;9506:63;-1:-1;9606:2;9645:22;;3550:20;;-1:-1;9714:2;9753:22;;3550:20;;-1:-1;9850:3;9835:19;;9822:33;9875:18;9864:30;;9861:2;;;-1:-1;;9897:12;9861:2;9935:64;9991:7;9982:6;9971:9;9967:22;9935:64;:::i;:::-;9301:714;;;;-1:-1;9301:714;;-1:-1;9301:714;;9917:82;;9301:714;-1:-1;;;9301:714::o;10022:672::-;;;;;10210:2;10198:9;10189:7;10185:23;10181:32;10178:2;;;-1:-1;;10216:12;10178:2;10274:17;10261:31;10312:18;;10304:6;10301:30;10298:2;;;-1:-1;;10334:12;10298:2;10372:80;10444:7;10435:6;10424:9;10420:22;10372:80;:::i;:::-;10354:98;;-1:-1;10354:98;-1:-1;10517:2;10502:18;;10489:32;;-1:-1;10530:30;;;10527:2;;;-1:-1;;10563:12;10527:2;;10601:77;10670:7;10661:6;10650:9;10646:22;10601:77;:::i;:::-;10172:522;;;;-1:-1;10583:95;-1:-1;;;;10172:522::o;10701:392::-;;10841:2;;10829:9;10820:7;10816:23;10812:32;10809:2;;;-1:-1;;10847:12;10809:2;10898:17;10892:24;10936:18;10928:6;10925:30;10922:2;;;-1:-1;;10958:12;10922:2;11045:22;;1550:4;1538:17;;1534:27;-1:-1;1524:2;;-1:-1;;1565:12;1524:2;1605:6;1599:13;1627:80;1642:64;1699:6;1642:64;:::i;:::-;1627:80;:::i;:::-;1735:21;;;1792:14;;;;1767:17;;;1881;;;1872:27;;;;1869:36;-1:-1;1866:2;;;-1:-1;;1908:12;1866:2;-1:-1;1934:10;;1928:217;1953:6;1950:1;1947:13;1928:217;;;3698:13;;2021:61;;1975:1;1968:9;;;;;2096:14;;;;2124;;1928:217;;;-1:-1;10978:99;10803:290;-1:-1;;;;;;;10803:290::o;11100:235::-;;11201:2;11189:9;11180:7;11176:23;11172:32;11169:2;;;-1:-1;;11207:12;11169:2;2236:6;2223:20;2248:30;2272:5;2248:30;:::i;11342:257::-;;11454:2;11442:9;11433:7;11429:23;11425:32;11422:2;;;-1:-1;;11460:12;11422:2;2371:6;2365:13;2383:30;2407:5;2383:30;:::i;11606:239::-;;11709:2;11697:9;11688:7;11684:23;11680:32;11677:2;;;-1:-1;;11715:12;11677:2;2491:20;;-1:-1;;;;;;42477:78;;45402:34;;45392:2;;-1:-1;;45440:12;11852:533;;;;12000:2;11988:9;11979:7;11975:23;11971:32;11968:2;;;-1:-1;;12006:12;11968:2;3426:6;3420:13;3438:33;3465:5;3438:33;:::i;:::-;12169:2;12219:22;;3420:13;12058:74;;-1:-1;3438:33;3420:13;3438:33;:::i;:::-;12288:2;12337:22;;3838:13;12177:74;;-1:-1;42962:10;42951:22;;45772:34;;45762:2;;-1:-1;;45810:12;45762:2;12296:73;;;;11962:423;;;;;:::o;12392:263::-;;12507:2;12495:9;12486:7;12482:23;12478:32;12475:2;;;-1:-1;;12513:12;12475:2;-1:-1;3698:13;;12469:186;-1:-1;12469:186::o;12662:399::-;;;12794:2;12782:9;12773:7;12769:23;12765:32;12762:2;;;-1:-1;;12800:12;12762:2;-1:-1;;3698:13;;12963:2;13013:22;;;3698:13;;;;;-1:-1;12756:305::o;13068:535::-;;;;13217:2;13205:9;13196:7;13192:23;13188:32;13185:2;;;-1:-1;;13223:12;13185:2;3704:6;3698:13;13275:74;;13386:2;13440:9;13436:22;3698:13;13394:74;;13505:2;13559:9;13555:22;3698:13;13513:74;;13179:424;;;;;:::o;14202:690::-;;14395:5;41301:12;41845:6;41840:3;41833:19;41882:4;;41877:3;41873:14;14407:93;;41882:4;14571:5;41155:14;-1:-1;14610:260;14635:6;14632:1;14629:13;14610:260;;;14696:13;;-1:-1;;;;;42745:54;14002:37;;13764:14;;;;41688;;;;509:18;14650:9;14610:260;;;-1:-1;14876:10;;14326:566;-1:-1;;;;;14326:566::o;23436:271::-;;15288:5;41301:12;15399:52;15444:6;15439:3;15432:4;15425:5;15421:16;15399:52;:::i;:::-;15463:16;;;;;23570:137;-1:-1;;23570:137::o;23714:222::-;-1:-1;;;;;42745:54;;;;14002:37;;23841:2;23826:18;;23812:124::o;24188:349::-;-1:-1;;;;;42745:54;;;13871:58;;42745:54;;24523:2;24508:18;;14002:37;24351:2;24336:18;;24322:215::o;24884:940::-;-1:-1;;;;;42745:54;;;14002:37;;42745:54;;;25368:2;25353:18;;14002:37;25451:2;25436:18;;23387:37;;;;25542:2;25527:18;;16276:58;;;;25633:3;25618:19;;16276:58;42745:54;;;42756:42;25710:19;;13871:58;25809:3;25794:19;;23387:37;;;;25203:3;25188:19;;25174:650::o;25831:1020::-;-1:-1;;;;;42745:54;;;14002:37;;42745:54;;;26327:2;26312:18;;14002:37;26410:2;26395:18;;23387:37;;;;26493:2;26478:18;;23387:37;;;;26576:3;26561:19;;23387:37;;;;42756:42;26645:19;;23387:37;42745:54;;;26752:3;26737:19;;13871:58;26836:3;26821:19;;23387:37;;;;26162:3;26147:19;;26133:718::o;26858:321::-;-1:-1;;;;;42745:54;;;;14002:37;;42390:13;42383:21;27165:2;27150:18;;14965:34;27007:2;26992:18;;26978:201::o;27186:333::-;-1:-1;;;;;42745:54;;;;14002:37;;27505:2;27490:18;;23387:37;27341:2;27326:18;;27312:207::o;27526:444::-;-1:-1;;;;;42745:54;;;;14002:37;;27873:2;27858:18;;23387:37;;;;27956:2;27941:18;;23387:37;27709:2;27694:18;;27680:290::o;27977:210::-;42390:13;;42383:21;14965:34;;28098:2;28083:18;;28069:118::o;28194:218::-;-1:-1;;;;;;42477:78;;;;15080:36;;28319:2;28304:18;;28290:122::o;29509:310::-;;29656:2;29677:17;29670:47;16491:5;41301:12;41845:6;29656:2;29645:9;29641:18;41833:19;16585:52;16630:6;41873:14;29645:9;41873:14;29656:2;16611:5;16607:16;16585:52;:::i;:::-;45081:7;45065:14;-1:-1;;45061:28;16649:39;;;;41873:14;16649:39;;29627:192;-1:-1;;29627:192::o;29826:416::-;30026:2;30040:47;;;16925:2;30011:18;;;41833:19;-1:-1;;;41873:14;;;16941:40;17000:12;;;29997:245::o;30249:416::-;30449:2;30463:47;;;17251:2;30434:18;;;41833:19;17287:34;41873:14;;;17267:55;-1:-1;;;17342:12;;;17335:30;17384:12;;;30420:245::o;30672:416::-;30872:2;30886:47;;;17635:2;30857:18;;;41833:19;17671:26;41873:14;;;17651:47;17717:12;;;30843:245::o;31095:416::-;31295:2;31309:47;;;17968:2;31280:18;;;41833:19;18004:29;41873:14;;;17984:50;18053:12;;;31266:245::o;31518:416::-;31718:2;31732:47;;;18304:2;31703:18;;;41833:19;18340:29;41873:14;;;18320:50;18389:12;;;31689:245::o;31941:416::-;32141:2;32155:47;;;18640:2;32126:18;;;41833:19;18676:32;41873:14;;;18656:53;18728:12;;;32112:245::o;32364:416::-;32564:2;32578:47;;;18979:2;32549:18;;;41833:19;19015:34;41873:14;;;18995:55;-1:-1;;;19070:12;;;19063:30;19112:12;;;32535:245::o;32787:416::-;32987:2;33001:47;;;19363:2;32972:18;;;41833:19;19399:28;41873:14;;;19379:49;19447:12;;;32958:245::o;33210:416::-;33410:2;33424:47;;;19698:2;33395:18;;;41833:19;-1:-1;;;41873:14;;;19714:39;19772:12;;;33381:245::o;33633:416::-;33833:2;33847:47;;;20023:2;33818:18;;;41833:19;20059:34;41873:14;;;20039:55;-1:-1;;;20114:12;;;20107:29;20155:12;;;33804:245::o;34056:416::-;34256:2;34270:47;;;20406:2;34241:18;;;41833:19;-1:-1;;;41873:14;;;20422:34;20475:12;;;34227:245::o;34479:416::-;34679:2;34693:47;;;20726:2;34664:18;;;41833:19;20762:26;41873:14;;;20742:47;20808:12;;;34650:245::o;34902:416::-;35102:2;35116:47;;;21059:2;35087:18;;;41833:19;21095:25;41873:14;;;21075:46;21140:12;;;35073:245::o;35325:416::-;35525:2;35539:47;;;21391:2;35510:18;;;41833:19;21427:34;41873:14;;;21407:55;-1:-1;;;21482:12;;;21475:25;21519:12;;;35496:245::o;35748:416::-;35948:2;35962:47;;;21770:1;35933:18;;;41833:19;-1:-1;;;41873:14;;;21785:31;21835:12;;;35919:245::o;36171:416::-;36371:2;36385:47;;;22086:2;36356:18;;;41833:19;22122:31;41873:14;;;22102:52;22173:12;;;36342:245::o;36594:416::-;36794:2;36808:47;;;22424:2;36779:18;;;41833:19;-1:-1;;;41873:14;;;22440:43;22502:12;;;36765:245::o;37017:416::-;37217:2;37231:47;;;22753:2;37202:18;;;41833:19;22789:34;41873:14;;;22769:55;-1:-1;;;22844:12;;;22837:34;22890:12;;;37188:245::o;37440:416::-;37640:2;37654:47;;;23141:2;37625:18;;;41833:19;23177:34;41873:14;;;23157:55;-1:-1;;;23232:12;;;23225:46;23290:12;;;37611:245::o;37863:222::-;23387:37;;;37990:2;37975:18;;37961:124::o;38092:333::-;23387:37;;;-1:-1;;;;;42745:54;38411:2;38396:18;;14002:37;38247:2;38232:18;;38218:207::o;38432:848::-;;23417:5;23394:3;23387:37;44441:24;38910:2;38899:9;38895:18;16276:58;38737:3;38947:2;38936:9;38932:18;38925:48;38987:108;38737:3;38726:9;38722:19;39081:6;38987:108;:::i;:::-;-1:-1;;;;;42745:54;;;;39182:2;39167:18;;13871:58;-1:-1;39265:3;39250:19;23387:37;38979:116;38708:572;-1:-1;;;38708:572::o;39287:333::-;23387:37;;;39606:2;39591:18;;23387:37;39442:2;39427:18;;39413:207::o;40466:256::-;40528:2;40522:9;40554:17;;;40629:18;40614:34;;40650:22;;;40611:62;40608:2;;;40686:1;;40676:12;40608:2;40528;40695:22;40506:216;;-1:-1;40506:216::o;40729:304::-;;40888:18;40880:6;40877:30;40874:2;;;-1:-1;;40910:12;40874:2;-1:-1;40955:4;40943:17;;;41008:15;;40811:222::o;44721:268::-;44786:1;44793:101;44807:6;44804:1;44801:13;44793:101;;;44874:11;;;44868:18;44855:11;;;44848:39;44829:2;44822:10;44793:101;;;44909:6;44906:1;44903:13;44900:2;;;-1:-1;;44786:1;44956:16;;44949:27;44770:219::o;45102:117::-;-1:-1;;;;;42745:54;;45161:35;;45151:2;;45210:1;;45200:12;45226:111;45307:5;42390:13;42383:21;45285:5;45282:32;45272:2;;45328:1;;45318:12;45466:117;-1:-1;;;;;45553:5;42629:42;45528:5;45525:35;45515:2;;45574:1;;45564:12",
  "language": "Solidity",
  "natspec": {
    "kind": "dev",
    "methods": {
      "acceptGovernor()": {
        "details": "Accept to become the new governor. Must be called by the pending governor."
      },
      "addLiquidityWERC20(address,address,(uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))": {
        "details": "Add liquidity to Uniswap pool, with no staking rewards (use WERC20 wrapper)",
        "params": {
          "amt": "Amounts of tokens to supply, borrow, and get.",
          "tokenA": "Token A for the pair",
          "tokenB": "Token B for the pair"
        }
      },
      "addLiquidityWStakingRewards(address,address,(uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),address)": {
        "details": "Add liquidity to Uniswap pool, with staking rewards",
        "params": {
          "amt": "Amounts of tokens to supply, borrow, and get.",
          "tokenA": "Token A for the pair",
          "tokenB": "Token B for the pair",
          "wstaking": "Wrapped staking rewards address"
        }
      },
      "getAndApprovePair(address,address)": {
        "details": "Return the LP token for the token pairs (can be in any order)",
        "params": {
          "tokenA": "Token A to get LP token",
          "tokenB": "Token B to get LP token"
        }
      },
      "harvestWStakingRewards(address)": {
        "details": "Harvest staking reward tokens to in-exec position's owner",
        "params": {
          "wstaking": "Wrapped staking rewards address"
        }
      },
      "removeLiquidityWERC20(address,address,(uint256,uint256,uint256,uint256,uint256,uint256,uint256))": {
        "details": "Remove liquidity from Uniswap pool, with no staking rewards (use WERC20 wrapper)",
        "params": {
          "amt": "Amounts of tokens to take out, withdraw, repay, and get.",
          "tokenA": "Token A for the pair",
          "tokenB": "Token B for the pair"
        }
      },
      "removeLiquidityWStakingRewards(address,address,(uint256,uint256,uint256,uint256,uint256,uint256,uint256),address)": {
        "details": "Remove liquidity from Uniswap pool, from staking rewards",
        "params": {
          "amt": "Amounts of tokens to take out, withdraw, repay, and get.",
          "tokenA": "Token A for the pair",
          "tokenB": "Token B for the pair"
        }
      },
      "setPendingGovernor(address)": {
        "details": "Set the pending governor, which will be the governor once accepted.",
        "params": {
          "_pendingGovernor": "The address to become the pending governor."
        }
      },
      "setWhitelistLPTokens(address[],bool[])": {
        "details": "Set whitelist LP token statuses for spell",
        "params": {
          "lpTokens": "LP tokens to set whitelist statuses",
          "statuses": "Whitelist statuses"
        }
      },
      "supportsInterface(bytes4)": {
        "details": "See {IERC165-supportsInterface}. Time complexity O(1), guaranteed to always use less than 30 000 gas."
      }
    },
    "version": 1
  },
  "offset": [
    517,
    13203
  ],
  "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x139 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xBC197C81 GT PUSH2 0xAB JUMPI DUP1 PUSH4 0xE58BB639 GT PUSH2 0x6F JUMPI DUP1 PUSH4 0xE58BB639 EQ PUSH2 0x36A JUMPI DUP1 PUSH4 0xEE42C6F4 EQ PUSH2 0x37F JUMPI DUP1 PUSH4 0xF235757F EQ PUSH2 0x39F JUMPI DUP1 PUSH4 0xF23A6E61 EQ PUSH2 0x3BF JUMPI DUP1 PUSH4 0xF4B16045 EQ PUSH2 0x3DF JUMPI DUP1 PUSH4 0xF887EA40 EQ PUSH2 0x3FF JUMPI PUSH2 0x191 JUMP JUMPDEST DUP1 PUSH4 0xBC197C81 EQ PUSH2 0x2ED JUMPI DUP1 PUSH4 0xC45A0155 EQ PUSH2 0x31A JUMPI DUP1 PUSH4 0xCC9B1880 EQ PUSH2 0x32F JUMPI DUP1 PUSH4 0xD57CDEC5 EQ PUSH2 0x342 JUMPI DUP1 PUSH4 0xE3056A34 EQ PUSH2 0x355 JUMPI PUSH2 0x191 JUMP JUMPDEST DUP1 PUSH4 0x45174F18 GT PUSH2 0xFD JUMPI DUP1 PUSH4 0x45174F18 EQ PUSH2 0x243 JUMPI DUP1 PUSH4 0x4BAB09F6 EQ PUSH2 0x263 JUMPI DUP1 PUSH4 0x5741229C EQ PUSH2 0x283 JUMPI DUP1 PUSH4 0x69454B86 EQ PUSH2 0x298 JUMPI DUP1 PUSH4 0x76CDB03B EQ PUSH2 0x2B8 JUMPI DUP1 PUSH4 0xB2CFDE44 EQ PUSH2 0x2CD JUMPI PUSH2 0x191 JUMP JUMPDEST DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0x196 JUMPI DUP1 PUSH4 0xC340A24 EQ PUSH2 0x1CC JUMPI DUP1 PUSH4 0x1387D96D EQ PUSH2 0x1EE JUMPI DUP1 PUSH4 0x2185059F EQ PUSH2 0x20E JUMPI DUP1 PUSH4 0x3FC8CEF3 EQ PUSH2 0x22E JUMPI PUSH2 0x191 JUMP JUMPDEST CALLDATASIZE PUSH2 0x191 JUMPI CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND EQ PUSH2 0x18F JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x4075 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST STOP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1A2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1B6 PUSH2 0x1B1 CALLDATASIZE PUSH1 0x4 PUSH2 0x3B3E JUMP JUMPDEST PUSH2 0x414 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C3 SWAP2 SWAP1 PUSH2 0x3D8D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1D8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1E1 PUSH2 0x437 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C3 SWAP2 SWAP1 PUSH2 0x3C81 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x18F PUSH2 0x209 CALLDATASIZE PUSH1 0x4 PUSH2 0x38B7 JUMP JUMPDEST PUSH2 0x44C JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x21A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1E1 PUSH2 0x229 CALLDATASIZE PUSH1 0x4 PUSH2 0x3720 JUMP JUMPDEST PUSH2 0x477 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x23A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1E1 PUSH2 0x647 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x24F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x18F PUSH2 0x25E CALLDATASIZE PUSH1 0x4 PUSH2 0x36E8 JUMP JUMPDEST PUSH2 0x66B JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x26F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1B6 PUSH2 0x27E CALLDATASIZE PUSH1 0x4 PUSH2 0x36E8 JUMP JUMPDEST PUSH2 0xB10 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x28F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1E1 PUSH2 0xB25 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2A4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1E1 PUSH2 0x2B3 CALLDATASIZE PUSH1 0x4 PUSH2 0x3720 JUMP JUMPDEST PUSH2 0xB49 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1E1 PUSH2 0xB6F JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2D9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x18F PUSH2 0x2E8 CALLDATASIZE PUSH1 0x4 PUSH2 0x38F6 JUMP JUMPDEST PUSH2 0xB93 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2F9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x30D PUSH2 0x308 CALLDATASIZE PUSH1 0x4 PUSH2 0x3758 JUMP JUMPDEST PUSH2 0xEB3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C3 SWAP2 SWAP1 PUSH2 0x3D98 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x326 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1E1 PUSH2 0xEC7 JUMP JUMPDEST PUSH2 0x18F PUSH2 0x33D CALLDATASIZE PUSH1 0x4 PUSH2 0x3813 JUMP JUMPDEST PUSH2 0xEEB JUMP JUMPDEST PUSH2 0x18F PUSH2 0x350 CALLDATASIZE PUSH1 0x4 PUSH2 0x385B JUMP JUMPDEST PUSH2 0xFA4 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x361 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1E1 PUSH2 0x159E JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x376 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x18F PUSH2 0x15AD JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x38B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x18F PUSH2 0x39A CALLDATASIZE PUSH1 0x4 PUSH2 0x3A08 JUMP JUMPDEST PUSH2 0x163D JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3AB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x18F PUSH2 0x3BA CALLDATASIZE PUSH1 0x4 PUSH2 0x36E8 JUMP JUMPDEST PUSH2 0x1812 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x30D PUSH2 0x3DA CALLDATASIZE PUSH1 0x4 PUSH2 0x398E JUMP JUMPDEST PUSH2 0x1898 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3EB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1B6 PUSH2 0x3FA CALLDATASIZE PUSH1 0x4 PUSH2 0x3720 JUMP JUMPDEST PUSH2 0x18AA JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x40B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1E1 PUSH2 0x18CA JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x42 SLOAD PUSH3 0x10000 SWAP1 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x458 DUP5 DUP5 PUSH2 0x477 JUMP JUMPDEST SWAP1 POP PUSH2 0x465 DUP2 DUP4 CALLDATALOAD PUSH2 0x1A0C JUMP JUMPDEST PUSH2 0x471 DUP5 DUP5 DUP5 DUP5 PUSH2 0x1BDC JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x85 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP6 DUP6 AND DUP5 MSTORE SWAP1 SWAP2 MSTORE DUP2 KECCAK256 SLOAD SWAP1 SWAP2 AND DUP1 PUSH2 0x63E JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6A43905 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0xE6A43905 SWAP1 PUSH2 0x4F4 SWAP1 DUP8 SWAP1 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x3C95 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x50C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x520 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x544 SWAP2 SWAP1 PUSH2 0x3704 JUMP JUMPDEST SWAP1 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH2 0x56C JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x4019 JUMP JUMPDEST PUSH2 0x596 DUP5 PUSH32 0x0 PUSH2 0x2477 JUMP JUMPDEST PUSH2 0x5C0 DUP4 PUSH32 0x0 PUSH2 0x2477 JUMP JUMPDEST PUSH2 0x5EA DUP2 PUSH32 0x0 PUSH2 0x2477 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x85 PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP5 KECCAK256 DUP10 DUP8 AND DUP6 MSTORE DUP3 MSTORE DUP1 DUP5 KECCAK256 DUP1 SLOAD SWAP7 DUP9 AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT SWAP8 DUP9 AND DUP2 OR SWAP1 SWAP2 SSTORE SWAP3 DUP3 MSTORE DUP1 DUP5 KECCAK256 SWAP5 DUP5 MSTORE SWAP4 SWAP1 MSTORE SWAP2 SWAP1 KECCAK256 DUP1 SLOAD SWAP1 SWAP3 AND OR SWAP1 SSTORE JUMPDEST SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x228CB733 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x6A8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x6BC JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x6E0 SWAP2 SWAP1 PUSH2 0x3704 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xF70AEDD9 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x80 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x73E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x752 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x776 SWAP2 SWAP1 PUSH2 0x3947 JUMP JUMPDEST POP SWAP3 POP SWAP3 POP POP PUSH1 0x0 DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xA4775772 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7AA SWAP2 SWAP1 PUSH2 0x4214 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x7C2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x7D6 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x7FA SWAP2 SWAP1 PUSH2 0x3704 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x84 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 SWAP2 POP PUSH1 0xFF AND PUSH2 0x835 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x403E JUMP JUMPDEST DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ PUSH2 0x866 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3E0B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0xD1D6975 PUSH1 0xE3 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x68EB4BA8 SWAP1 PUSH2 0x8B8 SWAP1 DUP9 SWAP1 DUP7 SWAP1 PUSH1 0x0 NOT SWAP1 PUSH1 0x4 ADD PUSH2 0x3D6C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x8D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x8E6 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH4 0xB390C0AB PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND SWAP3 POP PUSH4 0xB390C0AB SWAP2 POP PUSH2 0x91A SWAP1 DUP6 SWAP1 PUSH1 0x0 NOT SWAP1 PUSH1 0x4 ADD PUSH2 0x4270 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x934 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x948 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x96C SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST POP PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH2 0x99C SWAP1 ADDRESS SWAP1 PUSH1 0x4 ADD PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x9B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x9C8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x9EC SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP1 POP PUSH2 0x9F8 DUP3 DUP8 PUSH2 0x2477 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x140E25AD PUSH1 0xE3 SHL DUP2 MSTORE PUSH1 0x0 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND SWAP1 PUSH4 0xA0712D68 SWAP1 PUSH2 0xA27 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x4214 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xA41 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xA55 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xA79 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x314568D9 PUSH1 0xE0 SHL DUP2 MSTORE SWAP1 SWAP2 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x314568D9 SWAP1 PUSH2 0xACC SWAP1 DUP11 SWAP1 DUP6 SWAP1 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x3D6C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xAE6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xAFA JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH2 0xB07 DUP7 PUSH2 0x24EE JUMP JUMPDEST POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x84 PUSH1 0x20 MSTORE PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x85 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x0 SWAP3 DUP4 MSTORE PUSH1 0x40 DUP1 DUP5 KECCAK256 SWAP1 SWAP2 MSTORE SWAP1 DUP3 MSTORE SWAP1 KECCAK256 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB9F DUP6 DUP6 PUSH2 0x477 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xF70AEDD9 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x80 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xBFD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xC11 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xC35 SWAP2 SWAP1 PUSH2 0x3947 JUMP JUMPDEST POP SWAP3 POP SWAP3 POP POP PUSH1 0x0 DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x228CB733 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xC78 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xC8C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xCB0 SWAP2 SWAP1 PUSH2 0x3704 JUMP JUMPDEST SWAP1 POP DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xA4775772 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCE8 SWAP2 SWAP1 PUSH2 0x4214 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xD00 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xD14 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xD38 SWAP2 SWAP1 PUSH2 0x3704 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ PUSH2 0xD5E JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x4146 JUMP JUMPDEST DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ PUSH2 0xD8F JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3E0B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0xD1D6975 PUSH1 0xE3 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x68EB4BA8 SWAP1 PUSH2 0xDE0 SWAP1 DUP9 SWAP1 DUP7 SWAP1 DUP12 CALLDATALOAD SWAP1 PUSH1 0x4 ADD PUSH2 0x3D6C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDFA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xE0E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH4 0xB390C0AB PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND SWAP3 POP PUSH4 0xB390C0AB SWAP2 POP PUSH2 0xE41 SWAP1 DUP6 SWAP1 DUP11 CALLDATALOAD SWAP1 PUSH1 0x4 ADD PUSH2 0x4270 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE5B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xE6F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE93 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST POP PUSH2 0xEA0 DUP9 DUP9 DUP9 DUP8 PUSH2 0x1BDC JUMP JUMPDEST PUSH2 0xEA9 DUP2 PUSH2 0x24EE JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH4 0xBC197C81 PUSH1 0xE0 SHL SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xEF7 DUP5 DUP5 PUSH2 0x477 JUMP JUMPDEST SWAP1 POP PUSH2 0xF05 DUP5 DUP5 DUP5 DUP5 PUSH2 0x261A JUMP JUMPDEST PUSH2 0xF8A DUP2 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x70A08231 ADDRESS PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF35 SWAP2 SWAP1 PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xF4D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xF61 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xF85 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST PUSH2 0x2C3E JUMP JUMPDEST PUSH2 0xF92 PUSH2 0x2D60 JUMP JUMPDEST PUSH2 0xF9B DUP5 PUSH2 0x24EE JUMP JUMPDEST PUSH2 0x471 DUP4 PUSH2 0x24EE JUMP JUMPDEST PUSH1 0x0 PUSH2 0xFB0 DUP6 DUP6 PUSH2 0x477 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x228CB733 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xFEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1003 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1027 SWAP2 SWAP1 PUSH2 0x3704 JUMP JUMPDEST SWAP1 POP PUSH2 0x1035 DUP7 DUP7 DUP7 DUP6 PUSH2 0x261A JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xF70AEDD9 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x80 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1093 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x10A7 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x10CB SWAP2 SWAP1 PUSH2 0x3947 JUMP JUMPDEST SWAP2 SWAP6 POP SWAP4 POP SWAP2 POP POP DUP1 ISZERO PUSH2 0x12BA JUMPI DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xA4775772 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x110F SWAP2 SWAP1 PUSH2 0x4214 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1127 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x113B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x115F SWAP2 SWAP1 PUSH2 0x3704 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ PUSH2 0x1185 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x4146 JUMP JUMPDEST DUP6 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ PUSH2 0x11B6 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3E0B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0xD1D6975 PUSH1 0xE3 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x68EB4BA8 SWAP1 PUSH2 0x1206 SWAP1 DUP10 SWAP1 DUP7 SWAP1 DUP7 SWAP1 PUSH1 0x4 ADD PUSH2 0x3D6C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1220 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1234 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH4 0xB390C0AB PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 AND SWAP3 POP PUSH4 0xB390C0AB SWAP2 POP PUSH2 0x1266 SWAP1 DUP6 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x4270 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1280 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1294 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x12B8 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST POP JUMPDEST PUSH2 0x12C4 DUP6 DUP8 PUSH2 0x2477 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP8 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH2 0x12F3 SWAP1 ADDRESS SWAP1 PUSH1 0x4 ADD PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x130B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x131F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1343 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xA0712D68 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1373 SWAP2 SWAP1 PUSH2 0x4214 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x138D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x13A1 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x13C5 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0xE985E9C5 PUSH1 0xE0 SHL DUP2 MSTORE SWAP1 SWAP2 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 AND SWAP1 PUSH4 0xE985E9C5 SWAP1 PUSH2 0x1416 SWAP1 ADDRESS SWAP1 PUSH32 0x0 SWAP1 PUSH1 0x4 ADD PUSH2 0x3C95 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x142E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1442 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1466 SWAP2 SWAP1 PUSH2 0x3B22 JUMP JUMPDEST PUSH2 0x14EC JUMPI PUSH1 0x40 MLOAD PUSH4 0xA22CB465 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 AND SWAP1 PUSH4 0xA22CB465 SWAP1 PUSH2 0x14B9 SWAP1 PUSH32 0x0 SWAP1 PUSH1 0x1 SWAP1 PUSH1 0x4 ADD PUSH2 0x3D38 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x14D3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x14E7 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x314568D9 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x314568D9 SWAP1 PUSH2 0x153C SWAP1 DUP12 SWAP1 DUP6 SWAP1 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x3D6C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1556 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x156A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH2 0x1576 PUSH2 0x2D60 JUMP JUMPDEST PUSH2 0x157F DUP12 PUSH2 0x24EE JUMP JUMPDEST PUSH2 0x1588 DUP11 PUSH2 0x24EE JUMP JUMPDEST PUSH2 0x1591 DUP7 PUSH2 0x24EE JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x43 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x43 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND CALLER EQ PUSH2 0x15D7 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3E51 JUMP JUMPDEST PUSH1 0x43 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SSTORE PUSH1 0x42 DUP1 SLOAD PUSH3 0x10000 PUSH1 0x1 PUSH1 0xB0 SHL SUB NOT AND CALLER PUSH3 0x10000 DUP2 MUL SWAP2 SWAP1 SWAP2 OR SWAP1 SWAP2 SSTORE PUSH1 0x40 MLOAD PUSH32 0xD345D81CE68C70B119A17EEE79DC1421700BD9CB21CA148A62DC90983964E82F SWAP2 PUSH2 0x1633 SWAP2 PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMP JUMPDEST PUSH1 0x42 SLOAD PUSH3 0x10000 SWAP1 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND CALLER EQ PUSH2 0x166D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3FAA JUMP JUMPDEST DUP3 DUP2 EQ PUSH2 0x168C JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3FD4 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x180B JUMPI DUP3 DUP3 DUP3 DUP2 DUP2 LT PUSH2 0x16A3 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x16B8 SWAP2 SWAP1 PUSH2 0x3B06 JUMP JUMPDEST ISZERO PUSH2 0x1795 JUMPI PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xE660CC08 DUP7 DUP7 DUP5 DUP2 DUP2 LT PUSH2 0x16F8 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x170D SWAP2 SWAP1 PUSH2 0x36E8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1729 SWAP2 SWAP1 PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1741 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1755 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1779 SWAP2 SWAP1 PUSH2 0x3B22 JUMP JUMPDEST PUSH2 0x1795 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3EBF JUMP JUMPDEST DUP3 DUP3 DUP3 DUP2 DUP2 LT PUSH2 0x17A1 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x17B6 SWAP2 SWAP1 PUSH2 0x3B06 JUMP JUMPDEST PUSH1 0x84 PUSH1 0x0 DUP8 DUP8 DUP6 DUP2 DUP2 LT PUSH2 0x17C6 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x17DB SWAP2 SWAP1 PUSH2 0x36E8 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x40 ADD PUSH1 0x0 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP2 ISZERO ISZERO SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE PUSH1 0x1 ADD PUSH2 0x168F JUMP JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH1 0x42 SLOAD PUSH3 0x10000 SWAP1 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND CALLER EQ PUSH2 0x1842 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3FAA JUMP JUMPDEST PUSH1 0x43 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND OR SWAP1 SSTORE PUSH1 0x40 MLOAD PUSH32 0x964DEA888B00B2AB53F13DFE7CA334B46E99338C222AE232D98547A1DA019F60 SWAP1 PUSH2 0x188D SWAP1 DUP4 SWAP1 PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH4 0xF23A6E61 PUSH1 0xE0 SHL SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x41 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x0 SWAP3 DUP4 MSTORE PUSH1 0x40 DUP1 DUP5 KECCAK256 SWAP1 SWAP2 MSTORE SWAP1 DUP3 MSTORE SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST DUP1 ISZERO DUP1 PUSH2 0x1976 JUMPI POP PUSH1 0x40 MLOAD PUSH4 0x6EB1769F PUSH1 0xE1 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND SWAP1 PUSH4 0xDD62ED3E SWAP1 PUSH2 0x1924 SWAP1 ADDRESS SWAP1 DUP7 SWAP1 PUSH1 0x4 ADD PUSH2 0x3C95 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x193C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1950 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1974 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0x1992 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x41BE JUMP JUMPDEST PUSH2 0x19E8 DUP4 PUSH4 0x95EA7B3 PUSH1 0xE0 SHL DUP5 DUP5 PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0x19B1 SWAP3 SWAP2 SWAP1 PUSH2 0x3D53 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1F NOT DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP2 SWAP1 MSTORE PUSH1 0x20 DUP2 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT SWAP1 SWAP4 AND SWAP3 SWAP1 SWAP3 OR SWAP1 SWAP2 MSTORE PUSH2 0x2FA9 JUMP JUMPDEST POP POP POP JUMP JUMPDEST EXTCODESIZE ISZERO ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH2 0x1A02 DUP5 DUP5 PUSH1 0x0 DUP6 PUSH2 0x3038 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1BD8 JUMPI PUSH1 0x0 NOT DUP2 EQ ISZERO PUSH2 0x1AB3 JUMPI PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xF70AEDD9 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x80 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1A75 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1A89 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1AAD SWAP2 SWAP1 PUSH2 0x3947 JUMP JUMPDEST SWAP4 POP POP POP POP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0xD1D6975 PUSH1 0xE3 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 DUP2 AND SWAP2 PUSH4 0x68EB4BA8 SWAP2 PUSH2 0x1B25 SWAP2 PUSH32 0x0 SWAP2 DUP8 AND SWAP1 DUP7 SWAP1 PUSH1 0x4 ADD PUSH2 0x3D6C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1B3F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1B53 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH4 0x2770A7EB PUSH1 0xE2 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP3 POP PUSH4 0x9DC29FAC SWAP2 POP PUSH2 0x1BA5 SWAP1 DUP6 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x3D53 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1BBF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1BD3 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x84 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH2 0x1C14 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x403E JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xD7AC71FF PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1C6F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1C83 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1CA7 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP1 POP PUSH1 0x40 DUP4 ADD CALLDATALOAD PUSH1 0x60 DUP5 ADD CALLDATALOAD PUSH1 0x80 DUP6 ADD CALLDATALOAD PUSH1 0x0 NOT DUP4 EQ ISZERO PUSH2 0x1D65 JUMPI PUSH1 0x40 MLOAD PUSH4 0x20A8BEE7 PUSH1 0xE2 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x82A2FB9C SWAP1 PUSH2 0x1D10 SWAP1 DUP8 SWAP1 DUP13 SWAP1 PUSH1 0x4 ADD PUSH2 0x421D JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1D2A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1D3E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1D62 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP3 POP JUMPDEST PUSH1 0x0 NOT DUP3 EQ ISZERO PUSH2 0x1E12 JUMPI PUSH1 0x40 MLOAD PUSH4 0x20A8BEE7 PUSH1 0xE2 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x82A2FB9C SWAP1 PUSH2 0x1DBD SWAP1 DUP8 SWAP1 DUP12 SWAP1 PUSH1 0x4 ADD PUSH2 0x421D JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1DD7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1DEB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1E0F SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP2 POP JUMPDEST PUSH1 0x0 NOT DUP2 EQ ISZERO PUSH2 0x1EBF JUMPI PUSH1 0x40 MLOAD PUSH4 0x20A8BEE7 PUSH1 0xE2 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x82A2FB9C SWAP1 PUSH2 0x1E6A SWAP1 DUP8 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0x421D JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1E84 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1E98 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1EBC SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x0 PUSH2 0x1F4B DUP8 PUSH1 0x20 ADD CALLDATALOAD DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x70A08231 ADDRESS PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1EF5 SWAP2 SWAP1 PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1F0D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1F21 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1F45 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP1 PUSH2 0x30F9 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 DUP3 ISZERO PUSH2 0x2006 JUMPI PUSH1 0x40 MLOAD PUSH4 0x5D5155EF PUSH1 0xE1 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0xBAA2ABDE SWAP1 PUSH2 0x1FAF SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP9 SWAP1 PUSH1 0x0 SWAP1 DUP2 SWAP1 ADDRESS SWAP1 TIMESTAMP SWAP1 PUSH1 0x4 ADD PUSH2 0x3CAF JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1FC8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1FDC JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2000 SWAP2 SWAP1 PUSH2 0x3BD2 JUMP JUMPDEST SWAP1 SWAP3 POP SWAP1 POP JUMPDEST PUSH1 0x0 PUSH2 0x2016 DUP8 PUSH1 0xA0 DUP13 ADD CALLDATALOAD PUSH2 0x3121 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2028 DUP8 PUSH1 0xC0 DUP14 ADD CALLDATALOAD PUSH2 0x3121 JUMP JUMPDEST SWAP1 POP DUP2 DUP5 LT DUP1 ISZERO PUSH2 0x2038 JUMPI POP DUP1 DUP4 GT JUMPDEST ISZERO PUSH2 0x2157 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH1 0x2 DUP1 DUP3 MSTORE PUSH1 0x60 DUP1 DUP4 ADD DUP5 MSTORE SWAP3 PUSH1 0x20 DUP4 ADD SWAP1 DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP POP SWAP1 POP DUP13 DUP15 DUP3 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x206C JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x2080 JUMPI INVALID JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 DUP5 AND PUSH1 0x20 SWAP2 DUP3 MUL SWAP3 SWAP1 SWAP3 ADD ADD MSTORE SWAP2 DUP2 AND SWAP1 SWAP2 MSTORE PUSH32 0x0 AND PUSH4 0x8803DBEE PUSH2 0x20CD DUP6 DUP9 PUSH2 0x30F9 JUMP JUMPDEST PUSH2 0x20D7 DUP8 DUP7 PUSH2 0x30F9 JUMP JUMPDEST DUP5 ADDRESS TIMESTAMP PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x20FA SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x4234 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2114 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2128 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0x2150 SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0x3A71 JUMP JUMPDEST POP POP PUSH2 0x2280 JUMP JUMPDEST DUP2 DUP5 GT DUP1 ISZERO PUSH2 0x2165 JUMPI POP DUP1 DUP4 LT JUMPDEST ISZERO PUSH2 0x2280 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH1 0x2 DUP1 DUP3 MSTORE PUSH1 0x60 DUP1 DUP4 ADD DUP5 MSTORE SWAP3 PUSH1 0x20 DUP4 ADD SWAP1 DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP POP SWAP1 POP DUP14 DUP14 DUP3 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x2199 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x21AD JUMPI INVALID JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 DUP5 AND PUSH1 0x20 SWAP2 DUP3 MUL SWAP3 SWAP1 SWAP3 ADD ADD MSTORE SWAP2 DUP2 AND SWAP1 SWAP2 MSTORE PUSH32 0x0 AND PUSH4 0x8803DBEE PUSH2 0x21FA DUP5 DUP8 PUSH2 0x30F9 JUMP JUMPDEST PUSH2 0x2204 DUP9 DUP8 PUSH2 0x30F9 JUMP JUMPDEST DUP5 ADDRESS TIMESTAMP PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2227 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x4234 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2241 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2255 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0x227D SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0x3A71 JUMP JUMPDEST POP POP JUMPDEST PUSH2 0x228A DUP14 DUP10 PUSH2 0x3146 JUMP JUMPDEST PUSH2 0x2294 DUP13 DUP9 PUSH2 0x3146 JUMP JUMPDEST PUSH2 0x229E DUP11 DUP8 PUSH2 0x3146 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0xA0 DUP13 ADD CALLDATALOAD SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP16 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH2 0x22D0 SWAP1 ADDRESS SWAP1 PUSH1 0x4 ADD PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x22E8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x22FC JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2320 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST LT ISZERO PUSH2 0x232B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0xC0 DUP13 ADD CALLDATALOAD SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP15 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH2 0x235D SWAP1 ADDRESS SWAP1 PUSH1 0x4 ADD PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2375 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2389 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x23AD SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST LT ISZERO PUSH2 0x23B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x20 DUP13 ADD CALLDATALOAD SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP13 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH2 0x23EA SWAP1 ADDRESS SWAP1 PUSH1 0x4 ADD PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2402 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2416 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x243A SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST LT ISZERO PUSH2 0x2445 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x244D PUSH2 0x2D60 JUMP JUMPDEST PUSH2 0x2456 DUP14 PUSH2 0x24EE JUMP JUMPDEST PUSH2 0x245F DUP13 PUSH2 0x24EE JUMP JUMPDEST PUSH2 0x2468 DUP11 PUSH2 0x24EE JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x41 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 DUP6 AND DUP4 MSTORE SWAP3 SWAP1 MSTORE KECCAK256 SLOAD PUSH1 0xFF AND PUSH2 0x1BD8 JUMPI PUSH2 0x24BA PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND DUP3 PUSH1 0x0 NOT PUSH2 0x18EE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x41 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 DUP6 AND DUP4 MSTORE SWAP3 SWAP1 MSTORE KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH2 0x251D SWAP1 ADDRESS SWAP1 PUSH1 0x4 ADD PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2535 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2549 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x256D SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x1BD8 JUMPI PUSH2 0x1BD8 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x630DC7CB PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x25D1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x25E5 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2609 SWAP2 SWAP1 PUSH2 0x3704 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND SWAP1 DUP4 PUSH2 0x31C4 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x84 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH2 0x2652 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x403E JUMP JUMPDEST PUSH2 0x265A PUSH2 0x31E3 JUMP JUMPDEST PUSH2 0x2665 DUP5 DUP4 CALLDATALOAD PUSH2 0x325A JUMP JUMPDEST PUSH2 0x2673 DUP4 DUP4 PUSH1 0x20 ADD CALLDATALOAD PUSH2 0x325A JUMP JUMPDEST PUSH2 0x2681 DUP2 DUP4 PUSH1 0x40 ADD CALLDATALOAD PUSH2 0x325A JUMP JUMPDEST PUSH2 0x268F DUP5 DUP4 PUSH1 0x60 ADD CALLDATALOAD PUSH2 0x32AE JUMP JUMPDEST PUSH2 0x269D DUP4 DUP4 PUSH1 0x80 ADD CALLDATALOAD PUSH2 0x32AE JUMP JUMPDEST PUSH2 0x26AB DUP2 DUP4 PUSH1 0xA0 ADD CALLDATALOAD PUSH2 0x32AE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x70A08231 ADDRESS PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x26DC SWAP2 SWAP1 PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x26F4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2708 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x272C SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP7 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x70A08231 ADDRESS PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x275C SWAP2 SWAP1 PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2774 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2788 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x27AC SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 DUP10 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xDFE1681 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x27F4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2808 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x282C SWAP2 SWAP1 PUSH2 0x3704 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO PUSH2 0x28C2 JUMPI DUP7 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x902F1AC PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2874 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2888 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x28AC SWAP2 SWAP1 PUSH2 0x3B66 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB SWAP2 DUP3 AND SWAP4 POP AND SWAP1 POP PUSH2 0x2945 JUMP JUMPDEST DUP7 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x902F1AC PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x28FB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x290F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2933 SWAP2 SWAP1 PUSH2 0x3B66 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB SWAP1 DUP2 AND SWAP4 POP AND SWAP1 POP JUMPDEST PUSH2 0x2951 DUP5 DUP5 DUP5 DUP5 PUSH2 0x3302 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP POP DUP5 ISZERO SWAP3 POP PUSH2 0x2A76 SWAP2 POP POP JUMPI PUSH1 0x40 DUP1 MLOAD PUSH1 0x2 DUP1 DUP3 MSTORE PUSH1 0x60 DUP1 DUP4 ADD DUP5 MSTORE SWAP3 PUSH1 0x20 DUP4 ADD SWAP1 DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP POP SWAP1 POP DUP2 PUSH2 0x298E JUMPI DUP7 DUP7 PUSH2 0x2991 JUMP JUMPDEST DUP6 DUP8 JUMPDEST DUP3 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x299E JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x29B2 JUMPI INVALID JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 DUP5 AND PUSH1 0x20 SWAP2 DUP3 MUL SWAP3 SWAP1 SWAP3 ADD ADD MSTORE SWAP2 DUP2 AND SWAP1 SWAP2 MSTORE PUSH1 0x40 MLOAD PUSH4 0x38ED1739 PUSH1 0xE0 SHL DUP2 MSTORE PUSH32 0x0 SWAP1 SWAP2 AND SWAP1 PUSH4 0x38ED1739 SWAP1 PUSH2 0x2A1D SWAP1 DUP7 SWAP1 PUSH1 0x0 SWAP1 DUP7 SWAP1 ADDRESS SWAP1 TIMESTAMP SWAP1 PUSH1 0x4 ADD PUSH2 0x4234 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2A37 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2A4B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0x2A73 SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0x3A71 JUMP JUMPDEST POP POP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH2 0x2AA5 SWAP1 ADDRESS SWAP1 PUSH1 0x4 ADD PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2ABD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2AD1 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2AF5 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP7 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x70A08231 ADDRESS PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2B25 SWAP2 SWAP1 PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2B3D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2B51 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2B75 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 GT DUP1 PUSH2 0x2B86 JUMPI POP PUSH1 0x0 DUP2 GT JUMPDEST ISZERO PUSH2 0xEA9 JUMPI PUSH1 0x40 MLOAD PUSH3 0xE8E337 PUSH1 0xE8 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0xE8E33700 SWAP1 PUSH2 0x2BEC SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP8 SWAP1 DUP8 SWAP1 PUSH1 0xC0 DUP15 ADD CALLDATALOAD SWAP1 PUSH1 0xE0 DUP16 ADD CALLDATALOAD SWAP1 ADDRESS SWAP1 TIMESTAMP SWAP1 PUSH1 0x4 ADD PUSH2 0x3CEF JUMP JUMPDEST PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2C06 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2C1A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1591 SWAP2 SWAP1 PUSH2 0x3BF5 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1BD8 JUMPI PUSH2 0x2C6E DUP3 PUSH32 0x0 PUSH2 0x2477 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x40C10F19 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x40C10F19 SWAP1 PUSH2 0x2CBC SWAP1 DUP6 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x3D53 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2CD6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2CEA JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH4 0x314568D9 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 DUP2 AND SWAP4 POP PUSH4 0x314568D9 SWAP3 POP PUSH2 0x1BA5 SWAP2 PUSH32 0x0 SWAP2 DUP8 AND SWAP1 DUP7 SWAP1 PUSH1 0x4 ADD PUSH2 0x3D6C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x70A08231 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x70A08231 SWAP1 PUSH2 0x2DAF SWAP1 ADDRESS SWAP1 PUSH1 0x4 ADD PUSH2 0x3C81 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2DC9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2DDD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2E01 SWAP2 SWAP1 PUSH2 0x3BBA JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x2FA6 JUMPI PUSH1 0x40 MLOAD PUSH4 0x2E1A7D4D PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x2E1A7D4D SWAP1 PUSH2 0x2E55 SWAP1 DUP5 SWAP1 PUSH1 0x4 ADD PUSH2 0x4214 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2E6F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2E83 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x0 PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x630DC7CB PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2EE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2EF6 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2F1A SWAP2 SWAP1 PUSH2 0x3704 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 DUP2 ADD SWAP2 DUP3 SWAP1 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND SWAP2 DUP5 SWAP2 PUSH2 0x2F43 SWAP2 SWAP1 PUSH2 0x3C65 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP8 GAS CALL SWAP3 POP POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x2F80 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x2F85 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP POP SWAP1 POP DUP1 PUSH2 0x1BD8 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3DE0 JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x2FFE DUP3 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x20 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x5361666545524332303A206C6F772D6C6576656C2063616C6C206661696C6564 DUP2 MSTORE POP DUP6 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH2 0x19F3 SWAP1 SWAP3 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST DUP1 MLOAD SWAP1 SWAP2 POP ISZERO PUSH2 0x19E8 JUMPI DUP1 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x301C SWAP2 SWAP1 PUSH2 0x3B22 JUMP JUMPDEST PUSH2 0x19E8 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x4174 JUMP JUMPDEST PUSH1 0x60 DUP3 SELFBALANCE LT ISZERO PUSH2 0x305A JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3F2D JUMP JUMPDEST PUSH2 0x3063 DUP6 PUSH2 0x19ED JUMP JUMPDEST PUSH2 0x307F JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x410F JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP7 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP6 DUP8 PUSH1 0x40 MLOAD PUSH2 0x309C SWAP2 SWAP1 PUSH2 0x3C65 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP8 GAS CALL SWAP3 POP POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x30D9 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x30DE JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP PUSH2 0x30EE DUP3 DUP3 DUP7 PUSH2 0x3351 JUMP JUMPDEST SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x311B JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3EF6 JUMP JUMPDEST POP SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 ADD DUP4 DUP2 LT ISZERO PUSH2 0x63E JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3E88 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1BD8 JUMPI PUSH2 0x3176 DUP3 PUSH32 0x0 PUSH2 0x2477 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x450CFAF PUSH1 0xE3 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x22867D78 SWAP1 PUSH2 0x1BA5 SWAP1 DUP6 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x3D53 JUMP JUMPDEST PUSH2 0x19E8 DUP4 PUSH4 0xA9059CBB PUSH1 0xE0 SHL DUP5 DUP5 PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0x19B1 SWAP3 SWAP2 SWAP1 PUSH2 0x3D53 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0x3258 JUMPI PUSH32 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xD0E30DB0 CALLVALUE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3244 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x180B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1BD8 JUMPI PUSH1 0x40 MLOAD PUSH4 0x246B5DE1 PUSH1 0xE1 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x48D6BBC2 SWAP1 PUSH2 0x1BA5 SWAP1 DUP6 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x3D53 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1BD8 JUMPI PUSH1 0x40 MLOAD PUSH4 0x4B8A3529 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND SWAP1 PUSH4 0x4B8A3529 SWAP1 PUSH2 0x1BA5 SWAP1 DUP6 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x3D53 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x330F DUP6 DUP6 PUSH2 0x338A JUMP JUMPDEST PUSH2 0x3319 DUP8 DUP6 PUSH2 0x338A JUMP JUMPDEST LT PUSH2 0x3335 JUMPI PUSH2 0x332A DUP7 DUP7 DUP7 DUP7 PUSH2 0x33C4 JUMP JUMPDEST SWAP2 POP PUSH1 0x0 SWAP1 POP PUSH2 0x3348 JUMP JUMPDEST PUSH2 0x3341 DUP6 DUP8 DUP6 DUP8 PUSH2 0x33C4 JUMP JUMPDEST SWAP2 POP PUSH1 0x1 SWAP1 POP JUMPDEST SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP4 ISZERO PUSH2 0x3360 JUMPI POP DUP2 PUSH2 0x1A05 JUMP JUMPDEST DUP3 MLOAD ISZERO PUSH2 0x3370 JUMPI DUP3 MLOAD DUP1 DUP5 PUSH1 0x20 ADD REVERT JUMPDEST DUP2 PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP2 SWAP1 PUSH2 0x3DAD JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x3399 JUMPI POP PUSH1 0x0 PUSH2 0x641 JUMP JUMPDEST DUP3 DUP3 MUL DUP3 DUP5 DUP3 DUP2 PUSH2 0x33A6 JUMPI INVALID JUMPDEST DIV EQ PUSH2 0x63E JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x40AC JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33D0 DUP5 DUP5 PUSH2 0x338A JUMP JUMPDEST PUSH2 0x33DA DUP7 DUP5 PUSH2 0x338A JUMP JUMPDEST LT ISZERO PUSH2 0x33F8 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x40ED JUMP JUMPDEST PUSH2 0x3E5 PUSH1 0x0 PUSH2 0x3409 PUSH2 0x7CD DUP7 PUSH2 0x338A JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x3424 PUSH2 0x341A DUP9 DUP9 PUSH2 0x338A JUMP JUMPDEST PUSH2 0x1F45 DUP11 DUP9 PUSH2 0x338A JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x3451 DUP8 PUSH2 0x344B PUSH2 0x3439 DUP12 DUP11 PUSH2 0x3121 JUMP JUMPDEST PUSH2 0x3445 DUP7 PUSH2 0x3E8 PUSH2 0x338A JUMP JUMPDEST SWAP1 PUSH2 0x34BE JUMP JUMPDEST SWAP1 PUSH2 0x338A JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x3464 PUSH1 0x4 PUSH2 0x344B DUP8 DUP6 PUSH2 0x338A JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x3484 PUSH2 0x347F DUP4 PUSH2 0x3479 DUP9 DUP1 PUSH2 0x338A JUMP JUMPDEST SWAP1 PUSH2 0x3121 JUMP JUMPDEST PUSH2 0x34F0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x3492 DUP3 DUP8 PUSH2 0x30F9 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x34A1 DUP9 PUSH1 0x2 PUSH2 0x338A JUMP JUMPDEST SWAP1 POP PUSH2 0x34AD DUP3 DUP3 PUSH2 0x34BE JUMP JUMPDEST SWAP14 SWAP13 POP POP POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 GT PUSH2 0x34DF JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x186 SWAP1 PUSH2 0x3F73 JUMP JUMPDEST DUP2 DUP4 DUP2 PUSH2 0x34E8 JUMPI INVALID JUMPDEST DIV SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH2 0x34FF JUMPI POP PUSH1 0x0 PUSH2 0x432 JUMP JUMPDEST DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL DUP3 LT PUSH2 0x3518 JUMPI PUSH1 0x80 SWAP2 SWAP1 SWAP2 SHR SWAP1 PUSH1 0x40 SHL JUMPDEST PUSH9 0x10000000000000000 DUP3 LT PUSH2 0x3533 JUMPI PUSH1 0x40 SWAP2 SWAP1 SWAP2 SHR SWAP1 PUSH1 0x20 SHL JUMPDEST PUSH5 0x100000000 DUP3 LT PUSH2 0x354A JUMPI PUSH1 0x20 SWAP2 SWAP1 SWAP2 SHR SWAP1 PUSH1 0x10 SHL JUMPDEST PUSH3 0x10000 DUP3 LT PUSH2 0x355F JUMPI PUSH1 0x10 SWAP2 SWAP1 SWAP2 SHR SWAP1 PUSH1 0x8 SHL JUMPDEST PUSH2 0x100 DUP3 LT PUSH2 0x3573 JUMPI PUSH1 0x8 SWAP2 SWAP1 SWAP2 SHR SWAP1 PUSH1 0x4 SHL JUMPDEST PUSH1 0x10 DUP3 LT PUSH2 0x3586 JUMPI PUSH1 0x4 SWAP2 SWAP1 SWAP2 SHR SWAP1 PUSH1 0x2 SHL JUMPDEST PUSH1 0x8 DUP3 LT PUSH2 0x3592 JUMPI PUSH1 0x1 SHL JUMPDEST PUSH1 0x1 DUP2 DUP6 DUP2 PUSH2 0x359D JUMPI INVALID JUMPDEST DIV DUP3 ADD SWAP1 SHR SWAP1 POP PUSH1 0x1 DUP2 DUP6 DUP2 PUSH2 0x35AF JUMPI INVALID JUMPDEST DIV DUP3 ADD SWAP1 SHR SWAP1 POP PUSH1 0x1 DUP2 DUP6 DUP2 PUSH2 0x35C1 JUMPI INVALID JUMPDEST DIV DUP3 ADD SWAP1 SHR SWAP1 POP PUSH1 0x1 DUP2 DUP6 DUP2 PUSH2 0x35D3 JUMPI INVALID JUMPDEST DIV DUP3 ADD SWAP1 SHR SWAP1 POP PUSH1 0x1 DUP2 DUP6 DUP2 PUSH2 0x35E5 JUMPI INVALID JUMPDEST DIV DUP3 ADD SWAP1 SHR SWAP1 POP PUSH1 0x1 DUP2 DUP6 DUP2 PUSH2 0x35F7 JUMPI INVALID JUMPDEST DIV DUP3 ADD SWAP1 SHR SWAP1 POP PUSH1 0x1 DUP2 DUP6 DUP2 PUSH2 0x3609 JUMPI INVALID JUMPDEST DIV DUP3 ADD SWAP1 SHR SWAP1 POP PUSH1 0x0 DUP2 DUP6 DUP2 PUSH2 0x361B JUMPI INVALID JUMPDEST DIV SWAP1 POP DUP1 DUP3 LT PUSH2 0x362B JUMPI DUP1 PUSH2 0x362D JUMP JUMPDEST DUP2 JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x3647 JUMPI DUP2 DUP3 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x365E JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP1 DUP4 MUL DUP6 ADD ADD GT ISZERO PUSH2 0x3678 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x3690 JUMPI DUP2 DUP3 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x36A7 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x3678 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x100 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x36D1 JUMPI DUP1 DUP2 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x36D1 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x36F9 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x63E DUP2 PUSH2 0x42F1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3715 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 MLOAD PUSH2 0x63E DUP2 PUSH2 0x42F1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x3732 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH2 0x373D DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH2 0x374D DUP2 PUSH2 0x42F1 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xA0 DUP10 DUP12 SUB SLT ISZERO PUSH2 0x3773 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP9 CALLDATALOAD PUSH2 0x377E DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP8 POP PUSH1 0x20 DUP10 ADD CALLDATALOAD PUSH2 0x378E DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP7 POP PUSH1 0x40 DUP10 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x37AA JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x37B6 DUP13 DUP4 DUP14 ADD PUSH2 0x3636 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x60 DUP12 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x37CE JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x37DA DUP13 DUP4 DUP14 ADD PUSH2 0x3636 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x80 DUP12 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x37F2 JUMPI DUP4 DUP5 REVERT JUMPDEST POP PUSH2 0x37FF DUP12 DUP3 DUP13 ADD PUSH2 0x367F JUMP JUMPDEST SWAP10 SWAP13 SWAP9 SWAP12 POP SWAP7 SWAP10 POP SWAP5 SWAP8 SWAP4 SWAP7 SWAP3 SWAP6 SWAP5 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x140 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3828 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP4 CALLDATALOAD PUSH2 0x3833 DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH2 0x3843 DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x3852 DUP6 PUSH1 0x40 DUP7 ADD PUSH2 0x36BF JUMP JUMPDEST SWAP1 POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x160 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x3871 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH2 0x387C DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP4 POP PUSH1 0x20 DUP6 ADD CALLDATALOAD PUSH2 0x388C DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP3 POP PUSH2 0x389B DUP7 PUSH1 0x40 DUP8 ADD PUSH2 0x36BF JUMP JUMPDEST SWAP2 POP PUSH2 0x140 DUP6 ADD CALLDATALOAD PUSH2 0x38AC DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP4 SWAP7 SWAP3 SWAP6 POP SWAP1 SWAP4 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x120 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x38CC JUMPI DUP3 DUP4 REVERT JUMPDEST DUP4 CALLDATALOAD PUSH2 0x38D7 DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH2 0x38E7 DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x3852 DUP6 PUSH1 0x40 DUP7 ADD PUSH2 0x36D7 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x140 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x390C JUMPI DUP4 DUP5 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH2 0x3917 DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP4 POP PUSH1 0x20 DUP6 ADD CALLDATALOAD PUSH2 0x3927 DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP3 POP PUSH2 0x3936 DUP7 PUSH1 0x40 DUP8 ADD PUSH2 0x36D7 JUMP JUMPDEST SWAP2 POP PUSH2 0x120 DUP6 ADD CALLDATALOAD PUSH2 0x38AC DUP2 PUSH2 0x42F1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x395C JUMPI DUP2 DUP3 REVERT JUMPDEST DUP5 MLOAD PUSH2 0x3967 DUP2 PUSH2 0x42F1 JUMP JUMPDEST PUSH1 0x20 DUP7 ADD MLOAD SWAP1 SWAP5 POP PUSH2 0x3978 DUP2 PUSH2 0x42F1 JUMP JUMPDEST PUSH1 0x40 DUP7 ADD MLOAD PUSH1 0x60 SWAP1 SWAP7 ADD MLOAD SWAP5 SWAP8 SWAP1 SWAP7 POP SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xA0 DUP8 DUP10 SUB SLT ISZERO PUSH2 0x39A6 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP7 CALLDATALOAD PUSH2 0x39B1 DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP6 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD PUSH2 0x39C1 DUP2 PUSH2 0x42F1 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 DUP8 ADD CALLDATALOAD SWAP4 POP PUSH1 0x60 DUP8 ADD CALLDATALOAD SWAP3 POP PUSH1 0x80 DUP8 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x39EA JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x39F6 DUP10 DUP3 DUP11 ADD PUSH2 0x367F JUMP JUMPDEST SWAP8 SWAP11 SWAP7 SWAP10 POP SWAP5 SWAP8 POP SWAP3 SWAP6 SWAP4 SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x3A1D JUMPI DUP2 DUP3 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x3A34 JUMPI DUP4 DUP5 REVERT JUMPDEST PUSH2 0x3A40 DUP9 DUP4 DUP10 ADD PUSH2 0x3636 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3A58 JUMPI DUP4 DUP5 REVERT JUMPDEST POP PUSH2 0x3A65 DUP8 DUP3 DUP9 ADD PUSH2 0x3636 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x3A83 JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3A99 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP4 ADD PUSH1 0x1F DUP2 ADD DUP6 SGT PUSH2 0x3AA9 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP1 MLOAD PUSH2 0x3ABC PUSH2 0x3AB7 DUP3 PUSH2 0x42A5 JUMP JUMPDEST PUSH2 0x427E JUMP JUMPDEST DUP2 DUP2 MSTORE DUP4 DUP2 ADD SWAP1 DUP4 DUP6 ADD DUP6 DUP5 MUL DUP6 ADD DUP7 ADD DUP10 LT ISZERO PUSH2 0x3AD8 JUMPI DUP7 DUP8 REVERT JUMPDEST DUP7 SWAP5 POP JUMPDEST DUP4 DUP6 LT ISZERO PUSH2 0x3AFA JUMPI DUP1 MLOAD DUP4 MSTORE PUSH1 0x1 SWAP5 SWAP1 SWAP5 ADD SWAP4 SWAP2 DUP6 ADD SWAP2 DUP6 ADD PUSH2 0x3ADC JUMP JUMPDEST POP SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3B17 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x63E DUP2 PUSH2 0x4306 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3B33 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 MLOAD PUSH2 0x63E DUP2 PUSH2 0x4306 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3B4F JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x63E JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3B7A JUMPI DUP1 DUP2 REVERT JUMPDEST DUP4 MLOAD PUSH2 0x3B85 DUP2 PUSH2 0x4314 JUMP JUMPDEST PUSH1 0x20 DUP6 ADD MLOAD SWAP1 SWAP4 POP PUSH2 0x3B96 DUP2 PUSH2 0x4314 JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD SWAP1 SWAP3 POP PUSH4 0xFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x3BAF JUMPI DUP2 DUP3 REVERT JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3BCB JUMPI DUP1 DUP2 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x3BE4 JUMPI DUP2 DUP3 REVERT JUMPDEST POP POP DUP1 MLOAD PUSH1 0x20 SWAP1 SWAP2 ADD MLOAD SWAP1 SWAP3 SWAP1 SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3C09 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP4 MLOAD SWAP3 POP PUSH1 0x20 DUP5 ADD MLOAD SWAP2 POP PUSH1 0x40 DUP5 ADD MLOAD SWAP1 POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x20 DUP1 DUP6 ADD SWAP5 POP DUP1 DUP5 ADD DUP4 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x3C5A JUMPI DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP8 MSTORE SWAP6 DUP3 ADD SWAP6 SWAP1 DUP3 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x3C35 JUMP JUMPDEST POP SWAP5 SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0x3C77 DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0x42C5 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 DUP4 AND DUP2 MSTORE SWAP2 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP8 DUP9 AND DUP2 MSTORE SWAP6 DUP8 AND PUSH1 0x20 DUP8 ADD MSTORE PUSH1 0x40 DUP7 ADD SWAP5 SWAP1 SWAP5 MSTORE PUSH1 0x60 DUP6 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x80 DUP5 ADD MSTORE SWAP1 SWAP3 AND PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0xE0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP9 DUP10 AND DUP2 MSTORE SWAP7 DUP9 AND PUSH1 0x20 DUP9 ADD MSTORE PUSH1 0x40 DUP8 ADD SWAP6 SWAP1 SWAP6 MSTORE PUSH1 0x60 DUP7 ADD SWAP4 SWAP1 SWAP4 MSTORE PUSH1 0x80 DUP6 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0xA0 DUP5 ADD MSTORE SWAP1 SWAP3 AND PUSH1 0xC0 DUP3 ADD MSTORE PUSH1 0xE0 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH2 0x100 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND DUP3 MSTORE ISZERO ISZERO PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND DUP3 MSTORE PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 SWAP1 SWAP4 AND DUP4 MSTORE PUSH1 0x20 DUP4 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 MSTORE DUP3 MLOAD DUP1 PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x3DCC DUP2 PUSH1 0x40 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH2 0x42C5 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP2 SWAP1 SWAP2 ADD PUSH1 0x40 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x11 SWAP1 DUP3 ADD MSTORE PUSH17 0x1C99599D5B99081155120819985A5B1959 PUSH1 0x7A SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x26 SWAP1 DUP3 ADD MSTORE PUSH32 0x636F6C6C61746572616C20746F6B656E202620777374616B696E67206D69736D PUSH1 0x40 DUP3 ADD MSTORE PUSH6 0x185D18DA1959 PUSH1 0xD2 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x18 SWAP1 DUP3 ADD MSTORE PUSH32 0x6E6F74207468652070656E64696E6720676F7665726E6F720000000000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1B SWAP1 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1B SWAP1 DUP3 ADD MSTORE PUSH32 0x6F7261636C65206E6F7420737570706F7274206C7020746F6B656E0000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1E SWAP1 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x26 SWAP1 DUP3 ADD MSTORE PUSH32 0x416464726573733A20696E73756666696369656E742062616C616E636520666F PUSH1 0x40 DUP3 ADD MSTORE PUSH6 0x1C8818D85B1B PUSH1 0xD2 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1A SWAP1 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206469766973696F6E206279207A65726F000000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x10 SWAP1 DUP3 ADD MSTORE PUSH16 0x3737BA103A34329033B7BB32B93737B9 PUSH1 0x81 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x25 SWAP1 DUP3 ADD MSTORE PUSH32 0x6C70546F6B656E732026207374617475736573206C656E677468206D69736D61 PUSH1 0x40 DUP3 ADD MSTORE PUSH5 0x1D18DA1959 PUSH1 0xDA SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xB SWAP1 DUP3 ADD MSTORE PUSH11 0x3737903638103A37B5B2B7 PUSH1 0xA9 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x18 SWAP1 DUP3 ADD MSTORE PUSH32 0x6C7020746F6B656E206E6F742077686974656C69737465640000000000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x17 SWAP1 DUP3 ADD MSTORE PUSH32 0x455448206D75737420636F6D652066726F6D2057455448000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x21 SWAP1 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206D756C7469706C69636174696F6E206F766572666C6F PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x77 PUSH1 0xF8 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x8 SWAP1 DUP3 ADD MSTORE PUSH8 0x14995D995C9CD959 PUSH1 0xC2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1D SWAP1 DUP3 ADD MSTORE PUSH32 0x416464726573733A2063616C6C20746F206E6F6E2D636F6E7472616374000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x14 SWAP1 DUP3 ADD MSTORE PUSH20 0x696E636F727265637420756E6465726C79696E67 PUSH1 0x60 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x2A SWAP1 DUP3 ADD MSTORE PUSH32 0x5361666545524332303A204552433230206F7065726174696F6E20646964206E PUSH1 0x40 DUP3 ADD MSTORE PUSH10 0x1BDD081CDD58D8D95959 PUSH1 0xB2 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x36 SWAP1 DUP3 ADD MSTORE PUSH32 0x5361666545524332303A20617070726F76652066726F6D206E6F6E2D7A65726F PUSH1 0x40 DUP3 ADD MSTORE PUSH22 0x20746F206E6F6E2D7A65726F20616C6C6F77616E6365 PUSH1 0x50 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST SWAP2 DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP7 DUP3 MSTORE DUP6 PUSH1 0x20 DUP4 ADD MSTORE PUSH1 0xA0 PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x4253 PUSH1 0xA0 DUP4 ADD DUP7 PUSH2 0x3C22 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP5 SWAP1 SWAP5 AND PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 ADD MSTORE SWAP4 SWAP3 POP POP POP JUMP JUMPDEST SWAP2 DUP3 MSTORE PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP2 DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x429D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x42BB JUMPI DUP1 DUP2 REVERT JUMPDEST POP PUSH1 0x20 SWAP1 DUP2 MUL ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x42E0 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x42C8 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x471 JUMPI POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x2FA6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x2FA6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x2FA6 JUMPI PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 CHAINID 0xAD 0xAE JUMPI CREATE DUP16 0xBC SWAP9 DUP9 0xDB KECCAK256 PUSH27 0x215123F64C98325D795D2B4A08708672875421A464736F6C634300 MOD 0xC STOP CALLER ",
  "pcMap": {
    "0": {
      "offset": [
        517,
        13203
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x80"
    },
    "2": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "5": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "7": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "CALLDATASIZE",
      "path": "45"
    },
    "8": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "LT",
      "path": "45"
    },
    "9": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x139"
    },
    "12": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "13": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "15": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "16": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "18": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "SHR",
      "path": "45"
    },
    "19": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "20": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xBC197C81"
    },
    "25": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "GT",
      "path": "45"
    },
    "26": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xAB"
    },
    "29": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "30": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "31": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xE58BB639"
    },
    "36": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "GT",
      "path": "45"
    },
    "37": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x6F"
    },
    "40": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "41": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "42": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xE58BB639"
    },
    "47": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "48": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x36A"
    },
    "51": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "52": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "53": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xEE42C6F4"
    },
    "58": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "59": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x37F"
    },
    "62": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "63": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "64": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xF235757F"
    },
    "69": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "70": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x39F"
    },
    "73": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "74": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "75": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xF23A6E61"
    },
    "80": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "81": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BF"
    },
    "84": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "85": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "86": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xF4B16045"
    },
    "91": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "92": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3DF"
    },
    "95": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "96": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "97": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xF887EA40"
    },
    "102": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "103": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3FF"
    },
    "106": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "107": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x191"
    },
    "110": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMP",
      "path": "45"
    },
    "111": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "112": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "113": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xBC197C81"
    },
    "118": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "119": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2ED"
    },
    "122": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "123": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "124": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xC45A0155"
    },
    "129": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "130": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x31A"
    },
    "133": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "134": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "135": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xCC9B1880"
    },
    "140": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "141": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x32F"
    },
    "144": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "145": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "146": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xD57CDEC5"
    },
    "151": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "152": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x342"
    },
    "155": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "156": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "157": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xE3056A34"
    },
    "162": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "163": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x355"
    },
    "166": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "167": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x191"
    },
    "170": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMP",
      "path": "45"
    },
    "171": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "172": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "173": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x45174F18"
    },
    "178": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "GT",
      "path": "45"
    },
    "179": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xFD"
    },
    "182": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "183": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "184": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x45174F18"
    },
    "189": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "190": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x243"
    },
    "193": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "194": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "195": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x4BAB09F6"
    },
    "200": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "201": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x263"
    },
    "204": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "205": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "206": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x5741229C"
    },
    "211": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "212": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x283"
    },
    "215": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "216": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "217": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x69454B86"
    },
    "222": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "223": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x298"
    },
    "226": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "227": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "228": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x76CDB03B"
    },
    "233": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "234": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2B8"
    },
    "237": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "238": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "239": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xB2CFDE44"
    },
    "244": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "245": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2CD"
    },
    "248": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "249": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x191"
    },
    "252": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMP",
      "path": "45"
    },
    "253": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "254": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "255": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x1FFC9A7"
    },
    "260": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "261": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x196"
    },
    "264": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "265": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "266": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xC340A24"
    },
    "271": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "272": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1CC"
    },
    "275": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "276": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "277": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x1387D96D"
    },
    "282": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "283": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1EE"
    },
    "286": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "287": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "288": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x2185059F"
    },
    "293": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "294": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x20E"
    },
    "297": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "298": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "299": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x3FC8CEF3"
    },
    "304": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "EQ",
      "path": "45"
    },
    "305": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x22E"
    },
    "308": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "309": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x191"
    },
    "312": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMP",
      "path": "45"
    },
    "313": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "314": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "CALLDATASIZE",
      "path": "45"
    },
    "315": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x191"
    },
    "318": {
      "fn": null,
      "offset": [
        517,
        13203
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "319": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4438,
        4448
      ],
      "op": "CALLER",
      "path": "41",
      "statement": 0
    },
    "320": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "322": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "324": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "326": {
      "op": "SHL"
    },
    "327": {
      "op": "SUB"
    },
    "328": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4452,
        4456
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "361": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4438,
        4456
      ],
      "op": "AND",
      "path": "41"
    },
    "362": {
      "branch": 181,
      "fn": "BasicSpell.<receive>",
      "offset": [
        4438,
        4456
      ],
      "op": "EQ",
      "path": "41"
    },
    "363": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x18F"
    },
    "366": {
      "branch": 181,
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "367": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "369": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "370": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "374": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "376": {
      "op": "SHL"
    },
    "377": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "DUP2",
      "path": "41"
    },
    "378": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "379": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "381": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "ADD",
      "path": "41"
    },
    "382": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x186"
    },
    "385": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "386": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x4075"
    },
    "389": {
      "fn": "BasicSpell.<receive>",
      "jump": "i",
      "offset": [
        4430,
        4484
      ],
      "op": "JUMP",
      "path": "41"
    },
    "390": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "391": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "393": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "394": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "DUP1",
      "path": "41"
    },
    "395": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "396": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "SUB",
      "path": "41"
    },
    "397": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "398": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "REVERT",
      "path": "41"
    },
    "399": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        4430,
        4484
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "400": {
      "offset": [
        517,
        13203
      ],
      "op": "STOP",
      "path": "45"
    },
    "401": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        517,
        13203
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "402": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        517,
        13203
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "404": {
      "fn": "BasicSpell.<receive>",
      "offset": [
        517,
        13203
      ],
      "op": "DUP1",
      "path": "45"
    },
    "405": {
      "first_revert": true,
      "fn": "BasicSpell.<receive>",
      "offset": [
        517,
        13203
      ],
      "op": "REVERT",
      "path": "45"
    },
    "406": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "JUMPDEST",
      "path": "1"
    },
    "407": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "CALLVALUE",
      "path": "1"
    },
    "408": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "DUP1",
      "path": "1"
    },
    "409": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "ISZERO",
      "path": "1"
    },
    "410": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "PUSH2",
      "path": "1",
      "value": "0x1A2"
    },
    "413": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "JUMPI",
      "path": "1"
    },
    "414": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "PUSH1",
      "path": "1",
      "value": "0x0"
    },
    "416": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "DUP1",
      "path": "1"
    },
    "417": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "REVERT",
      "path": "1"
    },
    "418": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "JUMPDEST",
      "path": "1"
    },
    "419": {
      "op": "POP"
    },
    "420": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "PUSH2",
      "path": "1",
      "value": "0x1B6"
    },
    "423": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "PUSH2",
      "path": "1",
      "value": "0x1B1"
    },
    "426": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "CALLDATASIZE",
      "path": "1"
    },
    "427": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "PUSH1",
      "path": "1",
      "value": "0x4"
    },
    "429": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "PUSH2",
      "path": "1",
      "value": "0x3B3E"
    },
    "432": {
      "fn": "ERC165.supportsInterface",
      "jump": "i",
      "offset": [
        965,
        1113
      ],
      "op": "JUMP",
      "path": "1"
    },
    "433": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "JUMPDEST",
      "path": "1"
    },
    "434": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "PUSH2",
      "path": "1",
      "value": "0x414"
    },
    "437": {
      "fn": "ERC165.supportsInterface",
      "jump": "i",
      "offset": [
        965,
        1113
      ],
      "op": "JUMP",
      "path": "1"
    },
    "438": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "JUMPDEST",
      "path": "1"
    },
    "439": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "PUSH1",
      "path": "1",
      "value": "0x40"
    },
    "441": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "MLOAD",
      "path": "1"
    },
    "442": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "PUSH2",
      "path": "1",
      "value": "0x1C3"
    },
    "445": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "SWAP2",
      "path": "1"
    },
    "446": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "SWAP1",
      "path": "1"
    },
    "447": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "PUSH2",
      "path": "1",
      "value": "0x3D8D"
    },
    "450": {
      "fn": "ERC165.supportsInterface",
      "jump": "i",
      "offset": [
        965,
        1113
      ],
      "op": "JUMP",
      "path": "1"
    },
    "451": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "JUMPDEST",
      "path": "1"
    },
    "452": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "PUSH1",
      "path": "1",
      "value": "0x40"
    },
    "454": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "MLOAD",
      "path": "1"
    },
    "455": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "DUP1",
      "path": "1"
    },
    "456": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "SWAP2",
      "path": "1"
    },
    "457": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "SUB",
      "path": "1"
    },
    "458": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "SWAP1",
      "path": "1"
    },
    "459": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "RETURN",
      "path": "1"
    },
    "460": {
      "offset": [
        321,
        344
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "461": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "CALLVALUE",
      "path": "17"
    },
    "462": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "DUP1",
      "path": "17"
    },
    "463": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "ISZERO",
      "path": "17"
    },
    "464": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x1D8"
    },
    "467": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "JUMPI",
      "path": "17"
    },
    "468": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x0"
    },
    "470": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "DUP1",
      "path": "17"
    },
    "471": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "REVERT",
      "path": "17"
    },
    "472": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "473": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "POP",
      "path": "17"
    },
    "474": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x1E1"
    },
    "477": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x437"
    },
    "480": {
      "fn": "ERC165.supportsInterface",
      "jump": "i",
      "offset": [
        321,
        344
      ],
      "op": "JUMP",
      "path": "17"
    },
    "481": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "482": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x40"
    },
    "484": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "MLOAD",
      "path": "17"
    },
    "485": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x1C3"
    },
    "488": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "SWAP2",
      "path": "17"
    },
    "489": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "490": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x3C81"
    },
    "493": {
      "fn": "ERC165.supportsInterface",
      "jump": "i",
      "offset": [
        321,
        344
      ],
      "op": "JUMP",
      "path": "17"
    },
    "494": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "495": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "CALLVALUE",
      "path": "45"
    },
    "496": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "DUP1",
      "path": "45"
    },
    "497": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "498": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1FA"
    },
    "501": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "502": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "504": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "DUP1",
      "path": "45"
    },
    "505": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "REVERT",
      "path": "45"
    },
    "506": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "507": {
      "op": "POP"
    },
    "508": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x18F"
    },
    "511": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x209"
    },
    "514": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "CALLDATASIZE",
      "path": "45"
    },
    "515": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "517": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x38B7"
    },
    "520": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "jump": "i",
      "offset": [
        10913,
        11241
      ],
      "op": "JUMP",
      "path": "45"
    },
    "521": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "522": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x44C"
    },
    "525": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "jump": "i",
      "offset": [
        10913,
        11241
      ],
      "op": "JUMP",
      "path": "45"
    },
    "526": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "527": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "CALLVALUE",
      "path": "45"
    },
    "528": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "DUP1",
      "path": "45"
    },
    "529": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "530": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x21A"
    },
    "533": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "534": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "536": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "DUP1",
      "path": "45"
    },
    "537": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "REVERT",
      "path": "45"
    },
    "538": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "539": {
      "op": "POP"
    },
    "540": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1E1"
    },
    "543": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x229"
    },
    "546": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "CALLDATASIZE",
      "path": "45"
    },
    "547": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "549": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3720"
    },
    "552": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "jump": "i",
      "offset": [
        1261,
        1733
      ],
      "op": "JUMP",
      "path": "45"
    },
    "553": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "554": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x477"
    },
    "557": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "jump": "i",
      "offset": [
        1261,
        1733
      ],
      "op": "JUMP",
      "path": "45"
    },
    "558": {
      "offset": [
        544,
        573
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "559": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "CALLVALUE",
      "path": "41"
    },
    "560": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "DUP1",
      "path": "41"
    },
    "561": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "562": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x23A"
    },
    "565": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "566": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "568": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "DUP1",
      "path": "41"
    },
    "569": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "REVERT",
      "path": "41"
    },
    "570": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "571": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "POP",
      "path": "41"
    },
    "572": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1E1"
    },
    "575": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x647"
    },
    "578": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "jump": "i",
      "offset": [
        544,
        573
      ],
      "op": "JUMP",
      "path": "41"
    },
    "579": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "580": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "CALLVALUE",
      "path": "45"
    },
    "581": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "DUP1",
      "path": "45"
    },
    "582": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "583": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x24F"
    },
    "586": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "587": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "589": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "DUP1",
      "path": "45"
    },
    "590": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "REVERT",
      "path": "45"
    },
    "591": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "592": {
      "op": "POP"
    },
    "593": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x18F"
    },
    "596": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x25E"
    },
    "599": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "CALLDATASIZE",
      "path": "45"
    },
    "600": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "602": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x36E8"
    },
    "605": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12388,
        13201
      ],
      "op": "JUMP",
      "path": "45"
    },
    "606": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "607": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x66B"
    },
    "610": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12388,
        13201
      ],
      "op": "JUMP",
      "path": "45"
    },
    "611": {
      "offset": [
        168,
        219
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "612": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "CALLVALUE",
      "path": "46"
    },
    "613": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "DUP1",
      "path": "46"
    },
    "614": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "ISZERO",
      "path": "46"
    },
    "615": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x26F"
    },
    "618": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "JUMPI",
      "path": "46"
    },
    "619": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x0"
    },
    "621": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "DUP1",
      "path": "46"
    },
    "622": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "REVERT",
      "path": "46"
    },
    "623": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "624": {
      "op": "POP"
    },
    "625": {
      "offset": [
        168,
        219
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x1B6"
    },
    "628": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x27E"
    },
    "631": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "CALLDATASIZE",
      "path": "46"
    },
    "632": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x4"
    },
    "634": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x36E8"
    },
    "637": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        168,
        219
      ],
      "op": "JUMP",
      "path": "46"
    },
    "638": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "639": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0xB10"
    },
    "642": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        168,
        219
      ],
      "op": "JUMP",
      "path": "46"
    },
    "643": {
      "offset": [
        509,
        540
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "644": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "CALLVALUE",
      "path": "41"
    },
    "645": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "DUP1",
      "path": "41"
    },
    "646": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "647": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x28F"
    },
    "650": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "651": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "653": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "DUP1",
      "path": "41"
    },
    "654": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "REVERT",
      "path": "41"
    },
    "655": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "656": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "POP",
      "path": "41"
    },
    "657": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1E1"
    },
    "660": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0xB25"
    },
    "663": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        509,
        540
      ],
      "op": "JUMP",
      "path": "41"
    },
    "664": {
      "offset": [
        752,
        812
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "665": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "CALLVALUE",
      "path": "45"
    },
    "666": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "DUP1",
      "path": "45"
    },
    "667": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "668": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2A4"
    },
    "671": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "672": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "674": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "DUP1",
      "path": "45"
    },
    "675": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "REVERT",
      "path": "45"
    },
    "676": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "677": {
      "op": "POP"
    },
    "678": {
      "offset": [
        752,
        812
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1E1"
    },
    "681": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2B3"
    },
    "684": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "CALLDATASIZE",
      "path": "45"
    },
    "685": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "687": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3720"
    },
    "690": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        752,
        812
      ],
      "op": "JUMP",
      "path": "45"
    },
    "691": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "692": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xB49"
    },
    "695": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        752,
        812
      ],
      "op": "JUMP",
      "path": "45"
    },
    "696": {
      "offset": [
        478,
        505
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "697": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "CALLVALUE",
      "path": "41"
    },
    "698": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "DUP1",
      "path": "41"
    },
    "699": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "700": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2C4"
    },
    "703": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "704": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "706": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "DUP1",
      "path": "41"
    },
    "707": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "REVERT",
      "path": "41"
    },
    "708": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "709": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "POP",
      "path": "41"
    },
    "710": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1E1"
    },
    "713": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0xB6F"
    },
    "716": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        478,
        505
      ],
      "op": "JUMP",
      "path": "41"
    },
    "717": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "718": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "CALLVALUE",
      "path": "45"
    },
    "719": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "DUP1",
      "path": "45"
    },
    "720": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "721": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2D9"
    },
    "724": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "725": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "727": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "DUP1",
      "path": "45"
    },
    "728": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "REVERT",
      "path": "45"
    },
    "729": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "730": {
      "op": "POP"
    },
    "731": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x18F"
    },
    "734": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2E8"
    },
    "737": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "CALLDATASIZE",
      "path": "45"
    },
    "738": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "740": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x38F6"
    },
    "743": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        11469,
        12261
      ],
      "op": "JUMP",
      "path": "45"
    },
    "744": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "745": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xB93"
    },
    "748": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        11469,
        12261
      ],
      "op": "JUMP",
      "path": "45"
    },
    "749": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "JUMPDEST",
      "path": "50"
    },
    "750": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "CALLVALUE",
      "path": "50"
    },
    "751": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "DUP1",
      "path": "50"
    },
    "752": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "ISZERO",
      "path": "50"
    },
    "753": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "PUSH2",
      "path": "50",
      "value": "0x2F9"
    },
    "756": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "JUMPI",
      "path": "50"
    },
    "757": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "PUSH1",
      "path": "50",
      "value": "0x0"
    },
    "759": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "DUP1",
      "path": "50"
    },
    "760": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "REVERT",
      "path": "50"
    },
    "761": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "JUMPDEST",
      "path": "50"
    },
    "762": {
      "op": "POP"
    },
    "763": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "PUSH2",
      "path": "50",
      "value": "0x30D"
    },
    "766": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "PUSH2",
      "path": "50",
      "value": "0x308"
    },
    "769": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "CALLDATASIZE",
      "path": "50"
    },
    "770": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "PUSH1",
      "path": "50",
      "value": "0x4"
    },
    "772": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "PUSH2",
      "path": "50",
      "value": "0x3758"
    },
    "775": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "jump": "i",
      "offset": [
        502,
        775
      ],
      "op": "JUMP",
      "path": "50"
    },
    "776": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "JUMPDEST",
      "path": "50"
    },
    "777": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "PUSH2",
      "path": "50",
      "value": "0xEB3"
    },
    "780": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "jump": "i",
      "offset": [
        502,
        775
      ],
      "op": "JUMP",
      "path": "50"
    },
    "781": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "JUMPDEST",
      "path": "50"
    },
    "782": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "PUSH1",
      "path": "50",
      "value": "0x40"
    },
    "784": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "MLOAD",
      "path": "50"
    },
    "785": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "PUSH2",
      "path": "50",
      "value": "0x1C3"
    },
    "788": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "SWAP2",
      "path": "50"
    },
    "789": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "SWAP1",
      "path": "50"
    },
    "790": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "PUSH2",
      "path": "50",
      "value": "0x3D98"
    },
    "793": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "jump": "i",
      "offset": [
        502,
        775
      ],
      "op": "JUMP",
      "path": "50"
    },
    "794": {
      "offset": [
        622,
        664
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "795": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "CALLVALUE",
      "path": "45"
    },
    "796": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "DUP1",
      "path": "45"
    },
    "797": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "798": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x326"
    },
    "801": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "802": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "804": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "DUP1",
      "path": "45"
    },
    "805": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "REVERT",
      "path": "45"
    },
    "806": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "807": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "POP",
      "path": "45"
    },
    "808": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1E1"
    },
    "811": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xEC7"
    },
    "814": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "jump": "i",
      "offset": [
        622,
        664
      ],
      "op": "JUMP",
      "path": "45"
    },
    "815": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5694,
        6131
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "816": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5694,
        6131
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x18F"
    },
    "819": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5694,
        6131
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x33D"
    },
    "822": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5694,
        6131
      ],
      "op": "CALLDATASIZE",
      "path": "45"
    },
    "823": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5694,
        6131
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "825": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5694,
        6131
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3813"
    },
    "828": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "jump": "i",
      "offset": [
        5694,
        6131
      ],
      "op": "JUMP",
      "path": "45"
    },
    "829": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5694,
        6131
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "830": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5694,
        6131
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xEEB"
    },
    "833": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "jump": "i",
      "offset": [
        5694,
        6131
      ],
      "op": "JUMP",
      "path": "45"
    },
    "834": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "835": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x18F"
    },
    "838": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x350"
    },
    "841": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "CALLDATASIZE",
      "path": "45"
    },
    "842": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "844": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x385B"
    },
    "847": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        6397,
        7713
      ],
      "op": "JUMP",
      "path": "45"
    },
    "848": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "849": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xFA4"
    },
    "852": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        6397,
        7713
      ],
      "op": "JUMP",
      "path": "45"
    },
    "853": {
      "offset": [
        373,
        403
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "854": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "CALLVALUE",
      "path": "17"
    },
    "855": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "DUP1",
      "path": "17"
    },
    "856": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "ISZERO",
      "path": "17"
    },
    "857": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x361"
    },
    "860": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "JUMPI",
      "path": "17"
    },
    "861": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x0"
    },
    "863": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "DUP1",
      "path": "17"
    },
    "864": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "REVERT",
      "path": "17"
    },
    "865": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "866": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "POP",
      "path": "17"
    },
    "867": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x1E1"
    },
    "870": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x159E"
    },
    "873": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        373,
        403
      ],
      "op": "JUMP",
      "path": "17"
    },
    "874": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "875": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "CALLVALUE",
      "path": "17"
    },
    "876": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "DUP1",
      "path": "17"
    },
    "877": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "ISZERO",
      "path": "17"
    },
    "878": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x376"
    },
    "881": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "JUMPI",
      "path": "17"
    },
    "882": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x0"
    },
    "884": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "DUP1",
      "path": "17"
    },
    "885": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "REVERT",
      "path": "17"
    },
    "886": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "887": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "POP",
      "path": "17"
    },
    "888": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x18F"
    },
    "891": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x15AD"
    },
    "894": {
      "fn": "Governable.acceptGovernor",
      "jump": "i",
      "offset": [
        1234,
        1444
      ],
      "op": "JUMP",
      "path": "17"
    },
    "895": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "896": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "CALLVALUE",
      "path": "46"
    },
    "897": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "DUP1",
      "path": "46"
    },
    "898": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "ISZERO",
      "path": "46"
    },
    "899": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x38B"
    },
    "902": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "JUMPI",
      "path": "46"
    },
    "903": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x0"
    },
    "905": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "DUP1",
      "path": "46"
    },
    "906": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "REVERT",
      "path": "46"
    },
    "907": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "908": {
      "op": "POP"
    },
    "909": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x18F"
    },
    "912": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x39A"
    },
    "915": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "CALLDATASIZE",
      "path": "46"
    },
    "916": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x4"
    },
    "918": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x3A08"
    },
    "921": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "jump": "i",
      "offset": [
        570,
        1008
      ],
      "op": "JUMP",
      "path": "46"
    },
    "922": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "923": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x163D"
    },
    "926": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "jump": "i",
      "offset": [
        570,
        1008
      ],
      "op": "JUMP",
      "path": "46"
    },
    "927": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "928": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "CALLVALUE",
      "path": "17"
    },
    "929": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "DUP1",
      "path": "17"
    },
    "930": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "ISZERO",
      "path": "17"
    },
    "931": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x3AB"
    },
    "934": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "JUMPI",
      "path": "17"
    },
    "935": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x0"
    },
    "937": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "DUP1",
      "path": "17"
    },
    "938": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "REVERT",
      "path": "17"
    },
    "939": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "940": {
      "op": "POP"
    },
    "941": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x18F"
    },
    "944": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x3BA"
    },
    "947": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "CALLDATASIZE",
      "path": "17"
    },
    "948": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x4"
    },
    "950": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x36E8"
    },
    "953": {
      "fn": "Governable.setPendingGovernor",
      "jump": "i",
      "offset": [
        981,
        1144
      ],
      "op": "JUMP",
      "path": "17"
    },
    "954": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "955": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x1812"
    },
    "958": {
      "fn": "Governable.setPendingGovernor",
      "jump": "i",
      "offset": [
        981,
        1144
      ],
      "op": "JUMP",
      "path": "17"
    },
    "959": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "JUMPDEST",
      "path": "50"
    },
    "960": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "CALLVALUE",
      "path": "50"
    },
    "961": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "DUP1",
      "path": "50"
    },
    "962": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "ISZERO",
      "path": "50"
    },
    "963": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "PUSH2",
      "path": "50",
      "value": "0x3CB"
    },
    "966": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "JUMPI",
      "path": "50"
    },
    "967": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "PUSH1",
      "path": "50",
      "value": "0x0"
    },
    "969": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "DUP1",
      "path": "50"
    },
    "970": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "REVERT",
      "path": "50"
    },
    "971": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "JUMPDEST",
      "path": "50"
    },
    "972": {
      "op": "POP"
    },
    "973": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "PUSH2",
      "path": "50",
      "value": "0x30D"
    },
    "976": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "PUSH2",
      "path": "50",
      "value": "0x3DA"
    },
    "979": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "CALLDATASIZE",
      "path": "50"
    },
    "980": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "PUSH1",
      "path": "50",
      "value": "0x4"
    },
    "982": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "PUSH2",
      "path": "50",
      "value": "0x398E"
    },
    "985": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "jump": "i",
      "offset": [
        259,
        498
      ],
      "op": "JUMP",
      "path": "50"
    },
    "986": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "JUMPDEST",
      "path": "50"
    },
    "987": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "PUSH2",
      "path": "50",
      "value": "0x1898"
    },
    "990": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "jump": "i",
      "offset": [
        259,
        498
      ],
      "op": "JUMP",
      "path": "50"
    },
    "991": {
      "offset": [
        578,
        638
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "992": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "CALLVALUE",
      "path": "41"
    },
    "993": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "DUP1",
      "path": "41"
    },
    "994": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "995": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3EB"
    },
    "998": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "999": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "1001": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "DUP1",
      "path": "41"
    },
    "1002": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "REVERT",
      "path": "41"
    },
    "1003": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "1004": {
      "op": "POP"
    },
    "1005": {
      "offset": [
        578,
        638
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1B6"
    },
    "1008": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3FA"
    },
    "1011": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "CALLDATASIZE",
      "path": "41"
    },
    "1012": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "1014": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3720"
    },
    "1017": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "jump": "i",
      "offset": [
        578,
        638
      ],
      "op": "JUMP",
      "path": "41"
    },
    "1018": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "1019": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x18AA"
    },
    "1022": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "jump": "i",
      "offset": [
        578,
        638
      ],
      "op": "JUMP",
      "path": "41"
    },
    "1023": {
      "offset": [
        687,
        729
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1024": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "CALLVALUE",
      "path": "45"
    },
    "1025": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1026": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1027": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x40B"
    },
    "1030": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "1031": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1033": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1034": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "REVERT",
      "path": "45"
    },
    "1035": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1036": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "POP",
      "path": "45"
    },
    "1037": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1E1"
    },
    "1040": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x18CA"
    },
    "1043": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "jump": "i",
      "offset": [
        687,
        729
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1044": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "JUMPDEST",
      "path": "1"
    },
    "1045": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1047": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1049": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "1051": {
      "op": "SHL"
    },
    "1052": {
      "op": "SUB"
    },
    "1053": {
      "op": "NOT"
    },
    "1054": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "DUP2",
      "path": "1",
      "statement": 1
    },
    "1055": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "AND",
      "path": "1"
    },
    "1056": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1050,
        1054
      ],
      "op": "PUSH1",
      "path": "1",
      "value": "0x0"
    },
    "1058": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "SWAP1",
      "path": "1"
    },
    "1059": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "DUP2",
      "path": "1"
    },
    "1060": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "MSTORE",
      "path": "1"
    },
    "1061": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "PUSH1",
      "path": "1",
      "value": "0x20"
    },
    "1063": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "DUP2",
      "path": "1"
    },
    "1064": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "SWAP1",
      "path": "1"
    },
    "1065": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "MSTORE",
      "path": "1"
    },
    "1066": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "PUSH1",
      "path": "1",
      "value": "0x40"
    },
    "1068": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "SWAP1",
      "path": "1"
    },
    "1069": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "KECCAK256",
      "path": "1"
    },
    "1070": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "SLOAD",
      "path": "1"
    },
    "1071": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "PUSH1",
      "path": "1",
      "value": "0xFF"
    },
    "1073": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        1073,
        1106
      ],
      "op": "AND",
      "path": "1"
    },
    "1074": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "JUMPDEST",
      "path": "1"
    },
    "1075": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "SWAP2",
      "path": "1"
    },
    "1076": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "SWAP1",
      "path": "1"
    },
    "1077": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        965,
        1113
      ],
      "op": "POP",
      "path": "1"
    },
    "1078": {
      "fn": "ERC165.supportsInterface",
      "jump": "o",
      "offset": [
        965,
        1113
      ],
      "op": "JUMP",
      "path": "1"
    },
    "1079": {
      "offset": [
        321,
        344
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "1080": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x42"
    },
    "1082": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "SLOAD",
      "path": "17"
    },
    "1083": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "PUSH3",
      "path": "17",
      "value": "0x10000"
    },
    "1087": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "1088": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "DIV",
      "path": "17"
    },
    "1089": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1091": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1093": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1095": {
      "op": "SHL"
    },
    "1096": {
      "op": "SUB"
    },
    "1097": {
      "offset": [
        321,
        344
      ],
      "op": "AND",
      "path": "17"
    },
    "1098": {
      "fn": "ERC165.supportsInterface",
      "offset": [
        321,
        344
      ],
      "op": "DUP2",
      "path": "17"
    },
    "1099": {
      "fn": "ERC165.supportsInterface",
      "jump": "o",
      "offset": [
        321,
        344
      ],
      "op": "JUMP",
      "path": "17"
    },
    "1100": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1101": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11034,
        11044
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1103": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11047,
        11080
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x458"
    },
    "1106": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11065,
        11071
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1107": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11073,
        11079
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1108": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11047,
        11064
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x477"
    },
    "1111": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "jump": "i",
      "offset": [
        11047,
        11080
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1112": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11047,
        11080
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1113": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11034,
        11080
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1114": {
      "op": "POP"
    },
    "1115": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11117,
        11152
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 2,
      "value": "0x465"
    },
    "1118": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11034,
        11080
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1119": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11138,
        11151
      ],
      "op": "DUP4",
      "path": "45"
    },
    "1120": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11138,
        11151
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "1121": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11117,
        11133
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1A0C"
    },
    "1124": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "jump": "i",
      "offset": [
        11117,
        11152
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1125": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11117,
        11152
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1126": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11188,
        11236
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 3,
      "value": "0x471"
    },
    "1129": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11212,
        11218
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1130": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11220,
        11226
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1131": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11228,
        11231
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1132": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11233,
        11235
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1133": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11188,
        11211
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1BDC"
    },
    "1136": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "jump": "i",
      "offset": [
        11188,
        11236
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1137": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        11188,
        11236
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1138": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "POP",
      "path": "45"
    },
    "1139": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "POP",
      "path": "45"
    },
    "1140": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "POP",
      "path": "45"
    },
    "1141": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "offset": [
        10913,
        11241
      ],
      "op": "POP",
      "path": "45"
    },
    "1142": {
      "fn": "UniswapV2SpellV1.removeLiquidityWERC20",
      "jump": "o",
      "offset": [
        10913,
        11241
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1143": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1144": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1146": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1148": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1150": {
      "op": "SHL"
    },
    "1151": {
      "op": "SUB"
    },
    "1152": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1153": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "DUP4",
      "path": "45"
    },
    "1154": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "AND",
      "path": "45"
    },
    "1155": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1336,
        1343
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1157": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1158": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1159": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1160": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1369
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x85"
    },
    "1162": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "1164": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1165": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1166": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1167": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1169": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1170": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "DUP4",
      "path": "45"
    },
    "1171": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1377
      ],
      "op": "KECCAK256",
      "path": "45"
    },
    "1172": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1385
      ],
      "op": "DUP6",
      "path": "45"
    },
    "1173": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1385
      ],
      "op": "DUP6",
      "path": "45"
    },
    "1174": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1385
      ],
      "op": "AND",
      "path": "45"
    },
    "1175": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1385
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1176": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1385
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1177": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1385
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1178": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1385
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "1179": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1385
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1180": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1385
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1181": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1385
      ],
      "op": "KECCAK256",
      "path": "45"
    },
    "1182": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1385
      ],
      "op": "SLOAD",
      "path": "45"
    },
    "1183": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1336,
        1343
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1184": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1336,
        1343
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "1185": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1364,
        1385
      ],
      "op": "AND",
      "path": "45"
    },
    "1186": {
      "branch": 147,
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1395,
        1411
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1187": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1391,
        1714
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x63E"
    },
    "1190": {
      "branch": 147,
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1391,
        1714
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "1191": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 4,
      "value": "0x40"
    },
    "1193": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "1194": {
      "op": "PUSH4",
      "value": "0xE6A43905"
    },
    "1199": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "1201": {
      "op": "SHL"
    },
    "1202": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1203": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1204": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1206": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1208": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1210": {
      "op": "SHL"
    },
    "1211": {
      "op": "SUB"
    },
    "1212": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1433
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "1245": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1441
      ],
      "op": "AND",
      "path": "45"
    },
    "1246": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1441
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1247": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1441
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xE6A43905"
    },
    "1252": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1441
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1253": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4F4"
    },
    "1256": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1257": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1442,
        1448
      ],
      "op": "DUP8",
      "path": "45"
    },
    "1258": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1442,
        1448
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1259": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1450,
        1456
      ],
      "op": "DUP8",
      "path": "45"
    },
    "1260": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1450,
        1456
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1261": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "1263": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "ADD",
      "path": "45"
    },
    "1264": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C95"
    },
    "1267": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "jump": "i",
      "offset": [
        1426,
        1457
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1268": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1269": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "1271": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1273": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "1274": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1275": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP4",
      "path": "45"
    },
    "1276": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "SUB",
      "path": "45"
    },
    "1277": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1278": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP7",
      "path": "45"
    },
    "1279": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1280": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "1281": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1282": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1283": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1284": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x50C"
    },
    "1287": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "1288": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1290": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1291": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "REVERT",
      "path": "45"
    },
    "1292": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1293": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "POP",
      "path": "45"
    },
    "1294": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "GAS",
      "path": "45"
    },
    "1295": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "1296": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1297": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1298": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1299": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x520"
    },
    "1302": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "1303": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "1304": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1306": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1307": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "1308": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "1309": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1311": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "REVERT",
      "path": "45"
    },
    "1312": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1313": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "POP",
      "path": "45"
    },
    "1314": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "POP",
      "path": "45"
    },
    "1315": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "POP",
      "path": "45"
    },
    "1316": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "POP",
      "path": "45"
    },
    "1317": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1319": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "1320": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "1321": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "1323": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "NOT",
      "path": "45"
    },
    "1324": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "1326": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP3",
      "path": "45"
    },
    "1327": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "ADD",
      "path": "45"
    },
    "1328": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "AND",
      "path": "45"
    },
    "1329": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP3",
      "path": "45"
    },
    "1330": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "ADD",
      "path": "45"
    },
    "1331": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1332": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1334": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1335": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "POP",
      "path": "45"
    },
    "1336": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1337": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "ADD",
      "path": "45"
    },
    "1338": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1339": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x544"
    },
    "1342": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "1343": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1344": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3704"
    },
    "1347": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "jump": "i",
      "offset": [
        1426,
        1457
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1348": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1426,
        1457
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1349": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1421,
        1457
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1350": {
      "op": "POP"
    },
    "1351": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1353": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1355": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1357": {
      "op": "SHL"
    },
    "1358": {
      "op": "SUB"
    },
    "1359": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1473,
        1489
      ],
      "op": "DUP2",
      "path": "45",
      "statement": 5
    },
    "1360": {
      "branch": 148,
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1473,
        1489
      ],
      "op": "AND",
      "path": "45"
    },
    "1361": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1465,
        1505
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x56C"
    },
    "1364": {
      "branch": 148,
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1465,
        1505
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "1365": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1465,
        1505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1367": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1465,
        1505
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "1368": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1372": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1374": {
      "op": "SHL"
    },
    "1375": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1465,
        1505
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1376": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1465,
        1505
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1377": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1465,
        1505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "1379": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1465,
        1505
      ],
      "op": "ADD",
      "path": "45"
    },
    "1380": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1465,
        1505
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x186"
    },
    "1383": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1465,
        1505
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1384": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1465,
        1505
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4019"
    },
    "1387": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "jump": "i",
      "offset": [
        1465,
        1505
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1388": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1465,
        1505
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1389": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1513,
        1551
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 6,
      "value": "0x596"
    },
    "1392": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1527,
        1533
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1393": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1543,
        1549
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "1426": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1513,
        1526
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2477"
    },
    "1429": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "jump": "i",
      "offset": [
        1513,
        1551
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1430": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1513,
        1551
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1431": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1559,
        1597
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 7,
      "value": "0x5C0"
    },
    "1434": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1573,
        1579
      ],
      "op": "DUP4",
      "path": "45"
    },
    "1435": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1589,
        1595
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "1468": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1559,
        1572
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2477"
    },
    "1471": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "jump": "i",
      "offset": [
        1559,
        1597
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1472": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1559,
        1597
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1473": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1605,
        1639
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 8,
      "value": "0x5EA"
    },
    "1476": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1619,
        1621
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1477": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1631,
        1637
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "1510": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1605,
        1618
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2477"
    },
    "1513": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "jump": "i",
      "offset": [
        1605,
        1639
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1514": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1605,
        1639
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1515": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1517": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1519": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1521": {
      "op": "SHL"
    },
    "1522": {
      "op": "SUB"
    },
    "1523": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "DUP1",
      "path": "45",
      "statement": 9
    },
    "1524": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "DUP6",
      "path": "45"
    },
    "1525": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "AND",
      "path": "45"
    },
    "1526": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1528": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1529": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1530": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1531": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1652
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x85"
    },
    "1533": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "1535": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1536": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1537": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1538": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1540": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1541": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1542": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1660
      ],
      "op": "KECCAK256",
      "path": "45"
    },
    "1543": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1668
      ],
      "op": "DUP10",
      "path": "45"
    },
    "1544": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1668
      ],
      "op": "DUP8",
      "path": "45"
    },
    "1545": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1668
      ],
      "op": "AND",
      "path": "45"
    },
    "1546": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1668
      ],
      "op": "DUP6",
      "path": "45"
    },
    "1547": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1668
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1548": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1668
      ],
      "op": "DUP3",
      "path": "45"
    },
    "1549": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1668
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1550": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1668
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1551": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1668
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1552": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1668
      ],
      "op": "KECCAK256",
      "path": "45"
    },
    "1553": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1554": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "SLOAD",
      "path": "45"
    },
    "1555": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "SWAP7",
      "path": "45"
    },
    "1556": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "DUP9",
      "path": "45"
    },
    "1557": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "AND",
      "path": "45"
    },
    "1558": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1560": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1562": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1564": {
      "op": "SHL"
    },
    "1565": {
      "op": "SUB"
    },
    "1566": {
      "op": "NOT"
    },
    "1567": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "SWAP8",
      "path": "45"
    },
    "1568": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "DUP9",
      "path": "45"
    },
    "1569": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "AND",
      "path": "45"
    },
    "1570": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1571": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "OR",
      "path": "45"
    },
    "1572": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1573": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "1574": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1647,
        1673
      ],
      "op": "SSTORE",
      "path": "45"
    },
    "1575": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1694
      ],
      "op": "SWAP3",
      "path": "45",
      "statement": 10
    },
    "1576": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1694
      ],
      "op": "DUP3",
      "path": "45"
    },
    "1577": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1694
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1578": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1694
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1579": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1694
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1580": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1694
      ],
      "op": "KECCAK256",
      "path": "45"
    },
    "1581": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1702
      ],
      "op": "SWAP5",
      "path": "45"
    },
    "1582": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1702
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1583": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1702
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1584": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1702
      ],
      "op": "SWAP4",
      "path": "45"
    },
    "1585": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1702
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1586": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1702
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1587": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1702
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "1588": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1702
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1589": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1702
      ],
      "op": "KECCAK256",
      "path": "45"
    },
    "1590": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1707
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1591": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1707
      ],
      "op": "SLOAD",
      "path": "45"
    },
    "1592": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1707
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1593": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1707
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "1594": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1707
      ],
      "op": "AND",
      "path": "45"
    },
    "1595": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1707
      ],
      "op": "OR",
      "path": "45"
    },
    "1596": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1707
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1597": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1681,
        1707
      ],
      "op": "SSTORE",
      "path": "45"
    },
    "1598": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1391,
        1714
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1599": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1726,
        1728
      ],
      "op": "SWAP1",
      "path": "45",
      "statement": 11
    },
    "1600": {
      "op": "POP"
    },
    "1601": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1602": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "1603": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "1604": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "POP",
      "path": "45"
    },
    "1605": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        1261,
        1733
      ],
      "op": "POP",
      "path": "45"
    },
    "1606": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "jump": "o",
      "offset": [
        1261,
        1733
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1607": {
      "offset": [
        544,
        573
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "1608": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "1641": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "offset": [
        544,
        573
      ],
      "op": "DUP2",
      "path": "41"
    },
    "1642": {
      "fn": "UniswapV2SpellV1.getAndApprovePair",
      "jump": "o",
      "offset": [
        544,
        573
      ],
      "op": "JUMP",
      "path": "41"
    },
    "1643": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1644": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12453,
        12467
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1646": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12487,
        12495
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1647": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1649": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1651": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1653": {
      "op": "SHL"
    },
    "1654": {
      "op": "SUB"
    },
    "1655": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12503
      ],
      "op": "AND",
      "path": "45"
    },
    "1656": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12503
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x228CB733"
    },
    "1661": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1663": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "1664": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1665": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "1670": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "AND",
      "path": "45"
    },
    "1671": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "1673": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "SHL",
      "path": "45"
    },
    "1674": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1675": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1676": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "1678": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "ADD",
      "path": "45"
    },
    "1679": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "1681": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1683": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "1684": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1685": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP4",
      "path": "45"
    },
    "1686": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "SUB",
      "path": "45"
    },
    "1687": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1688": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1690": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP8",
      "path": "45"
    },
    "1691": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1692": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "1693": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1694": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1695": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1696": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x6A8"
    },
    "1699": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "1700": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1702": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1703": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "REVERT",
      "path": "45"
    },
    "1704": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1705": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "POP",
      "path": "45"
    },
    "1706": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "GAS",
      "path": "45"
    },
    "1707": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "CALL",
      "path": "45"
    },
    "1708": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1709": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1710": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1711": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x6BC"
    },
    "1714": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "1715": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "1716": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1718": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1719": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "1720": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "1721": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1723": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "REVERT",
      "path": "45"
    },
    "1724": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1725": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "POP",
      "path": "45"
    },
    "1726": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "POP",
      "path": "45"
    },
    "1727": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "POP",
      "path": "45"
    },
    "1728": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "POP",
      "path": "45"
    },
    "1729": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1731": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "1732": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "1733": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "1735": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "NOT",
      "path": "45"
    },
    "1736": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "1738": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP3",
      "path": "45"
    },
    "1739": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "ADD",
      "path": "45"
    },
    "1740": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "AND",
      "path": "45"
    },
    "1741": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP3",
      "path": "45"
    },
    "1742": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "ADD",
      "path": "45"
    },
    "1743": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1744": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1746": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1747": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "POP",
      "path": "45"
    },
    "1748": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1749": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "ADD",
      "path": "45"
    },
    "1750": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1751": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x6E0"
    },
    "1754": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "1755": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1756": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3704"
    },
    "1759": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12470,
        12505
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1760": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12470,
        12505
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1761": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12453,
        12505
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1762": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12453,
        12505
      ],
      "op": "POP",
      "path": "45"
    },
    "1763": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12514,
        12531
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1765": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12533,
        12544
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1766": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12554
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "1799": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1801": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1803": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1805": {
      "op": "SHL"
    },
    "1806": {
      "op": "SUB"
    },
    "1807": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12577
      ],
      "op": "AND",
      "path": "45"
    },
    "1808": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12577
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xF70AEDD9"
    },
    "1813": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1815": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "1816": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1817": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "1822": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "AND",
      "path": "45"
    },
    "1823": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "1825": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "SHL",
      "path": "45"
    },
    "1826": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1827": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1828": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "1830": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "ADD",
      "path": "45"
    },
    "1831": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x80"
    },
    "1833": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1835": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "1836": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1837": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP4",
      "path": "45"
    },
    "1838": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "SUB",
      "path": "45"
    },
    "1839": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1840": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP7",
      "path": "45"
    },
    "1841": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1842": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "1843": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1844": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1845": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1846": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x73E"
    },
    "1849": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "1850": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1852": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1853": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "REVERT",
      "path": "45"
    },
    "1854": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1855": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "POP",
      "path": "45"
    },
    "1856": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "GAS",
      "path": "45"
    },
    "1857": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "1858": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1859": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1860": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1861": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x752"
    },
    "1864": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "1865": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "1866": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1868": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1869": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "1870": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "1871": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1873": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "REVERT",
      "path": "45"
    },
    "1874": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1875": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "POP",
      "path": "45"
    },
    "1876": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "POP",
      "path": "45"
    },
    "1877": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "POP",
      "path": "45"
    },
    "1878": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "POP",
      "path": "45"
    },
    "1879": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1881": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "1882": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "1883": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "1885": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "NOT",
      "path": "45"
    },
    "1886": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "1888": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP3",
      "path": "45"
    },
    "1889": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "ADD",
      "path": "45"
    },
    "1890": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "AND",
      "path": "45"
    },
    "1891": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP3",
      "path": "45"
    },
    "1892": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "ADD",
      "path": "45"
    },
    "1893": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1894": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1896": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1897": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "POP",
      "path": "45"
    },
    "1898": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1899": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "ADD",
      "path": "45"
    },
    "1900": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1901": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x776"
    },
    "1904": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "1905": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1906": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3947"
    },
    "1909": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12550,
        12579
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1910": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12550,
        12579
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1911": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12511,
        12579
      ],
      "op": "POP",
      "path": "45"
    },
    "1912": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12511,
        12579
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "1913": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12511,
        12579
      ],
      "op": "POP",
      "path": "45"
    },
    "1914": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12511,
        12579
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "1915": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12511,
        12579
      ],
      "op": "POP",
      "path": "45"
    },
    "1916": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12511,
        12579
      ],
      "op": "POP",
      "path": "45"
    },
    "1917": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12585,
        12595
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1919": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12615,
        12623
      ],
      "op": "DUP5",
      "path": "45"
    },
    "1920": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1922": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1924": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1926": {
      "op": "SHL"
    },
    "1927": {
      "op": "SUB"
    },
    "1928": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12643
      ],
      "op": "AND",
      "path": "45"
    },
    "1929": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12643
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xA4775772"
    },
    "1934": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12644,
        12650
      ],
      "op": "DUP4",
      "path": "45"
    },
    "1935": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1937": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "1938": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP3",
      "path": "45"
    },
    "1939": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "1944": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "AND",
      "path": "45"
    },
    "1945": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "1947": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "SHL",
      "path": "45"
    },
    "1948": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1949": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "1950": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "1952": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "ADD",
      "path": "45"
    },
    "1953": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x7AA"
    },
    "1956": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "1957": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "1958": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4214"
    },
    "1961": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12598,
        12651
      ],
      "op": "JUMP",
      "path": "45"
    },
    "1962": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1963": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "1965": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "1967": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "1968": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1969": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP4",
      "path": "45"
    },
    "1970": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "SUB",
      "path": "45"
    },
    "1971": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP2",
      "path": "45"
    },
    "1972": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP7",
      "path": "45"
    },
    "1973": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1974": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "1975": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1976": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1977": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1978": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x7C2"
    },
    "1981": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "1982": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "1984": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1985": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "REVERT",
      "path": "45"
    },
    "1986": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "1987": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "POP",
      "path": "45"
    },
    "1988": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "GAS",
      "path": "45"
    },
    "1989": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "1990": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1991": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP1",
      "path": "45"
    },
    "1992": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "1993": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x7D6"
    },
    "1996": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "1997": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "1998": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2000": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2001": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "2002": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2003": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2005": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "REVERT",
      "path": "45"
    },
    "2006": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2007": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "POP",
      "path": "45"
    },
    "2008": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "POP",
      "path": "45"
    },
    "2009": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "POP",
      "path": "45"
    },
    "2010": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "POP",
      "path": "45"
    },
    "2011": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2013": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2014": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2015": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "2017": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "NOT",
      "path": "45"
    },
    "2018": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "2020": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP3",
      "path": "45"
    },
    "2021": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "ADD",
      "path": "45"
    },
    "2022": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "AND",
      "path": "45"
    },
    "2023": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP3",
      "path": "45"
    },
    "2024": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "ADD",
      "path": "45"
    },
    "2025": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2026": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2028": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2029": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "POP",
      "path": "45"
    },
    "2030": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2031": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "ADD",
      "path": "45"
    },
    "2032": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2033": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x7FA"
    },
    "2036": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "2037": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2038": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3704"
    },
    "2041": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12598,
        12651
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2042": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12598,
        12651
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2043": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2045": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2047": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2049": {
      "op": "SHL"
    },
    "2050": {
      "op": "SUB"
    },
    "2051": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "DUP2",
      "path": "45",
      "statement": 12
    },
    "2052": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "AND",
      "path": "45"
    },
    "2053": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2055": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2056": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2057": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2058": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12684
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x84"
    },
    "2060": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "2062": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2063": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2065": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2066": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "KECCAK256",
      "path": "45"
    },
    "2067": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "SLOAD",
      "path": "45"
    },
    "2068": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12585,
        12651
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2069": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12585,
        12651
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "2070": {
      "op": "POP"
    },
    "2071": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xFF"
    },
    "2073": {
      "branch": 149,
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12665,
        12688
      ],
      "op": "AND",
      "path": "45"
    },
    "2074": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12657,
        12717
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x835"
    },
    "2077": {
      "branch": 149,
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12657,
        12717
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "2078": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12657,
        12717
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2080": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12657,
        12717
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2081": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "2085": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "2087": {
      "op": "SHL"
    },
    "2088": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12657,
        12717
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2089": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12657,
        12717
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2090": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12657,
        12717
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "2092": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12657,
        12717
      ],
      "op": "ADD",
      "path": "45"
    },
    "2093": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12657,
        12717
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x186"
    },
    "2096": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12657,
        12717
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2097": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12657,
        12717
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x403E"
    },
    "2100": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12657,
        12717
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2101": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12657,
        12717
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2102": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12744,
        12752
      ],
      "op": "DUP5",
      "path": "45",
      "statement": 13
    },
    "2103": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2105": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2107": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2109": {
      "op": "SHL"
    },
    "2110": {
      "op": "SUB"
    },
    "2111": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12731,
        12752
      ],
      "op": "AND",
      "path": "45"
    },
    "2112": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12731,
        12740
      ],
      "op": "DUP4",
      "path": "45"
    },
    "2113": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2115": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2117": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2119": {
      "op": "SHL"
    },
    "2120": {
      "op": "SUB"
    },
    "2121": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12731,
        12752
      ],
      "op": "AND",
      "path": "45"
    },
    "2122": {
      "branch": 150,
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12731,
        12752
      ],
      "op": "EQ",
      "path": "45"
    },
    "2123": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12723,
        12795
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x866"
    },
    "2126": {
      "branch": 150,
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12723,
        12795
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "2127": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12723,
        12795
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2129": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12723,
        12795
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2130": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "2134": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "2136": {
      "op": "SHL"
    },
    "2137": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12723,
        12795
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2138": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12723,
        12795
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2139": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12723,
        12795
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "2141": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12723,
        12795
      ],
      "op": "ADD",
      "path": "45"
    },
    "2142": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12723,
        12795
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x186"
    },
    "2145": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12723,
        12795
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2146": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12723,
        12795
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3E0B"
    },
    "2149": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12723,
        12795
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2150": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12723,
        12795
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2151": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 14,
      "value": "0x40"
    },
    "2153": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2154": {
      "op": "PUSH4",
      "value": "0xD1D6975"
    },
    "2159": {
      "op": "PUSH1",
      "value": "0xE3"
    },
    "2161": {
      "op": "SHL"
    },
    "2162": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2163": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2164": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2166": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2168": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2170": {
      "op": "SHL"
    },
    "2171": {
      "op": "SUB"
    },
    "2172": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12836
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "2205": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12851
      ],
      "op": "AND",
      "path": "45"
    },
    "2206": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12851
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2207": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12851
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x68EB4BA8"
    },
    "2212": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12851
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2213": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x8B8"
    },
    "2216": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2217": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12852,
        12860
      ],
      "op": "DUP9",
      "path": "45"
    },
    "2218": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12852,
        12860
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2219": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12862,
        12868
      ],
      "op": "DUP7",
      "path": "45"
    },
    "2220": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12862,
        12868
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2221": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2223": {
      "op": "NOT"
    },
    "2224": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12875,
        12877
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2225": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "2227": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "ADD",
      "path": "45"
    },
    "2228": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3D6C"
    },
    "2231": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12832,
        12879
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2232": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2233": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2235": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2237": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2238": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2239": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "DUP4",
      "path": "45"
    },
    "2240": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "SUB",
      "path": "45"
    },
    "2241": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2242": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2244": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "DUP8",
      "path": "45"
    },
    "2245": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2246": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "2247": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2248": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2249": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2250": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x8D2"
    },
    "2253": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "2254": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2256": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2257": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "REVERT",
      "path": "45"
    },
    "2258": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2259": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "POP",
      "path": "45"
    },
    "2260": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "GAS",
      "path": "45"
    },
    "2261": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "CALL",
      "path": "45"
    },
    "2262": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2263": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2264": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2265": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x8E6"
    },
    "2268": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "2269": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2270": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2272": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2273": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "2274": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2275": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2277": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "REVERT",
      "path": "45"
    },
    "2278": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12832,
        12879
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2279": {
      "op": "POP"
    },
    "2280": {
      "op": "POP"
    },
    "2281": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 15,
      "value": "0x40"
    },
    "2283": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2284": {
      "op": "PUSH4",
      "value": "0xB390C0AB"
    },
    "2289": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "2291": {
      "op": "SHL"
    },
    "2292": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2293": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2294": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2296": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2298": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2300": {
      "op": "SHL"
    },
    "2301": {
      "op": "SUB"
    },
    "2302": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12916
      ],
      "op": "DUP9",
      "path": "45"
    },
    "2303": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12916
      ],
      "op": "AND",
      "path": "45"
    },
    "2304": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12916
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "2305": {
      "op": "POP"
    },
    "2306": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12916
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xB390C0AB"
    },
    "2311": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12916
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "2312": {
      "op": "POP"
    },
    "2313": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x91A"
    },
    "2316": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2317": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12917,
        12923
      ],
      "op": "DUP6",
      "path": "45"
    },
    "2318": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12917,
        12923
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2319": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2321": {
      "op": "NOT"
    },
    "2322": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12930,
        12932
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2323": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "2325": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "ADD",
      "path": "45"
    },
    "2326": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4270"
    },
    "2329": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12885,
        12934
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2330": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2331": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "2333": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2335": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2336": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2337": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP4",
      "path": "45"
    },
    "2338": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "SUB",
      "path": "45"
    },
    "2339": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2340": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2342": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP8",
      "path": "45"
    },
    "2343": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2344": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "2345": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2346": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2347": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2348": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x934"
    },
    "2351": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "2352": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2354": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2355": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "REVERT",
      "path": "45"
    },
    "2356": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2357": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "POP",
      "path": "45"
    },
    "2358": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "GAS",
      "path": "45"
    },
    "2359": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "CALL",
      "path": "45"
    },
    "2360": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2361": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2362": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2363": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x948"
    },
    "2366": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "2367": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2368": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2370": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2371": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "2372": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2373": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2375": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "REVERT",
      "path": "45"
    },
    "2376": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2377": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "POP",
      "path": "45"
    },
    "2378": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "POP",
      "path": "45"
    },
    "2379": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "POP",
      "path": "45"
    },
    "2380": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "POP",
      "path": "45"
    },
    "2381": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2383": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2384": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2385": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "2387": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "NOT",
      "path": "45"
    },
    "2388": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "2390": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP3",
      "path": "45"
    },
    "2391": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "ADD",
      "path": "45"
    },
    "2392": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "AND",
      "path": "45"
    },
    "2393": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP3",
      "path": "45"
    },
    "2394": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "ADD",
      "path": "45"
    },
    "2395": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2396": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2398": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2399": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "POP",
      "path": "45"
    },
    "2400": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2401": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "ADD",
      "path": "45"
    },
    "2402": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2403": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x96C"
    },
    "2406": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "2407": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2408": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "2411": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12885,
        12934
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2412": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12885,
        12934
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2413": {
      "op": "POP"
    },
    "2414": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2416": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2417": {
      "op": "PUSH4",
      "value": "0x70A08231"
    },
    "2422": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "2424": {
      "op": "SHL"
    },
    "2425": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2426": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2427": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12966,
        12977
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2429": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12966,
        12977
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2430": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2432": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2434": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2436": {
      "op": "SHL"
    },
    "2437": {
      "op": "SUB"
    },
    "2438": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13000
      ],
      "op": "DUP4",
      "path": "45"
    },
    "2439": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13000
      ],
      "op": "AND",
      "path": "45"
    },
    "2440": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13000
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2441": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13000
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x70A08231"
    },
    "2446": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13000
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2447": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x99C"
    },
    "2450": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2451": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13009,
        13013
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "2452": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13009,
        13013
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2453": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "2455": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "ADD",
      "path": "45"
    },
    "2456": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C81"
    },
    "2459": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12980,
        13015
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2460": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2461": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "2463": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2465": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2466": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2467": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP4",
      "path": "45"
    },
    "2468": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "SUB",
      "path": "45"
    },
    "2469": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2470": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP7",
      "path": "45"
    },
    "2471": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2472": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "2473": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2474": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2475": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2476": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x9B4"
    },
    "2479": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "2480": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2482": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2483": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "REVERT",
      "path": "45"
    },
    "2484": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2485": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "POP",
      "path": "45"
    },
    "2486": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "GAS",
      "path": "45"
    },
    "2487": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "2488": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2489": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2490": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2491": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x9C8"
    },
    "2494": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "2495": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2496": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2498": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2499": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "2500": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2501": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2503": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "REVERT",
      "path": "45"
    },
    "2504": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2505": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "POP",
      "path": "45"
    },
    "2506": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "POP",
      "path": "45"
    },
    "2507": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "POP",
      "path": "45"
    },
    "2508": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "POP",
      "path": "45"
    },
    "2509": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2511": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2512": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2513": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "2515": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "NOT",
      "path": "45"
    },
    "2516": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "2518": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP3",
      "path": "45"
    },
    "2519": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "ADD",
      "path": "45"
    },
    "2520": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "AND",
      "path": "45"
    },
    "2521": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP3",
      "path": "45"
    },
    "2522": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "ADD",
      "path": "45"
    },
    "2523": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2524": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2526": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2527": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "POP",
      "path": "45"
    },
    "2528": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2529": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "ADD",
      "path": "45"
    },
    "2530": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2531": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x9EC"
    },
    "2534": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "2535": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2536": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "2539": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        12980,
        13015
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2540": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12980,
        13015
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2541": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12966,
        13015
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2542": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12966,
        13015
      ],
      "op": "POP",
      "path": "45"
    },
    "2543": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13021,
        13048
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 16,
      "value": "0x9F8"
    },
    "2546": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13035,
        13037
      ],
      "op": "DUP3",
      "path": "45"
    },
    "2547": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13039,
        13047
      ],
      "op": "DUP8",
      "path": "45"
    },
    "2548": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13021,
        13034
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2477"
    },
    "2551": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        13021,
        13048
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2552": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13021,
        13048
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2553": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2555": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2556": {
      "op": "PUSH4",
      "value": "0x140E25AD"
    },
    "2561": {
      "op": "PUSH1",
      "value": "0xE3"
    },
    "2563": {
      "op": "SHL"
    },
    "2564": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2565": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2566": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13054,
        13061
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2568": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13054,
        13061
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2569": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2571": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2573": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2575": {
      "op": "SHL"
    },
    "2576": {
      "op": "SUB"
    },
    "2577": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13095
      ],
      "op": "DUP9",
      "path": "45"
    },
    "2578": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13095
      ],
      "op": "AND",
      "path": "45"
    },
    "2579": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13095
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2580": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13095
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xA0712D68"
    },
    "2585": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13095
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2586": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xA27"
    },
    "2589": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2590": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13096,
        13102
      ],
      "op": "DUP6",
      "path": "45"
    },
    "2591": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13096,
        13102
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2592": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "2594": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "ADD",
      "path": "45"
    },
    "2595": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4214"
    },
    "2598": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        13064,
        13103
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2599": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2600": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "2602": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2604": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2605": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2606": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP4",
      "path": "45"
    },
    "2607": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "SUB",
      "path": "45"
    },
    "2608": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2609": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2611": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP8",
      "path": "45"
    },
    "2612": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2613": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "2614": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2615": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2616": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2617": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xA41"
    },
    "2620": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "2621": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2623": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2624": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "REVERT",
      "path": "45"
    },
    "2625": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2626": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "POP",
      "path": "45"
    },
    "2627": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "GAS",
      "path": "45"
    },
    "2628": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "CALL",
      "path": "45"
    },
    "2629": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2630": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2631": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2632": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xA55"
    },
    "2635": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "2636": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2637": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2639": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2640": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "2641": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2642": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2644": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "REVERT",
      "path": "45"
    },
    "2645": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2646": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "POP",
      "path": "45"
    },
    "2647": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "POP",
      "path": "45"
    },
    "2648": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "POP",
      "path": "45"
    },
    "2649": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "POP",
      "path": "45"
    },
    "2650": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2652": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2653": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2654": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "2656": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "NOT",
      "path": "45"
    },
    "2657": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "2659": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP3",
      "path": "45"
    },
    "2660": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "ADD",
      "path": "45"
    },
    "2661": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "AND",
      "path": "45"
    },
    "2662": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP3",
      "path": "45"
    },
    "2663": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "ADD",
      "path": "45"
    },
    "2664": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2665": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2667": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2668": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "POP",
      "path": "45"
    },
    "2669": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2670": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "ADD",
      "path": "45"
    },
    "2671": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2672": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xA79"
    },
    "2675": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "2676": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2677": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "2680": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        13064,
        13103
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2681": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13064,
        13103
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2682": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 17,
      "value": "0x40"
    },
    "2684": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2685": {
      "op": "PUSH4",
      "value": "0x314568D9"
    },
    "2690": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "2692": {
      "op": "SHL"
    },
    "2693": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2694": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2695": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13054,
        13103
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2696": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13054,
        13103
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "2697": {
      "op": "POP"
    },
    "2698": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2700": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2702": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2704": {
      "op": "SHL"
    },
    "2705": {
      "op": "SUB"
    },
    "2706": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13113
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "2739": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13127
      ],
      "op": "AND",
      "path": "45"
    },
    "2740": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13127
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2741": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13127
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x314568D9"
    },
    "2746": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13127
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2747": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xACC"
    },
    "2750": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2751": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13128,
        13136
      ],
      "op": "DUP11",
      "path": "45"
    },
    "2752": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13128,
        13136
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2753": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13054,
        13103
      ],
      "op": "DUP6",
      "path": "45"
    },
    "2754": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13054,
        13103
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2755": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13142,
        13148
      ],
      "op": "DUP8",
      "path": "45"
    },
    "2756": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13142,
        13148
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2757": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "2759": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "ADD",
      "path": "45"
    },
    "2760": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3D6C"
    },
    "2763": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        13109,
        13149
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2764": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2765": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2767": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2769": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "2770": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2771": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "DUP4",
      "path": "45"
    },
    "2772": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "SUB",
      "path": "45"
    },
    "2773": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2774": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2776": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "DUP8",
      "path": "45"
    },
    "2777": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2778": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "2779": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2780": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2781": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2782": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xAE6"
    },
    "2785": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "2786": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2788": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2789": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "REVERT",
      "path": "45"
    },
    "2790": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2791": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "POP",
      "path": "45"
    },
    "2792": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "GAS",
      "path": "45"
    },
    "2793": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "CALL",
      "path": "45"
    },
    "2794": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2795": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2796": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "2797": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xAFA"
    },
    "2800": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "2801": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2802": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2804": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2805": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "2806": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "2807": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2809": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "REVERT",
      "path": "45"
    },
    "2810": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2811": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "POP",
      "path": "45"
    },
    "2812": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "POP",
      "path": "45"
    },
    "2813": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "POP",
      "path": "45"
    },
    "2814": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13109,
        13149
      ],
      "op": "POP",
      "path": "45"
    },
    "2815": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13180,
        13196
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 18,
      "value": "0xB07"
    },
    "2818": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13189,
        13195
      ],
      "op": "DUP7",
      "path": "45"
    },
    "2819": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13180,
        13188
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x24EE"
    },
    "2822": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "i",
      "offset": [
        13180,
        13196
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2823": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        13180,
        13196
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2824": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "POP",
      "path": "45"
    },
    "2825": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "POP",
      "path": "45"
    },
    "2826": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "POP",
      "path": "45"
    },
    "2827": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "POP",
      "path": "45"
    },
    "2828": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "POP",
      "path": "45"
    },
    "2829": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "POP",
      "path": "45"
    },
    "2830": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        12388,
        13201
      ],
      "op": "POP",
      "path": "45"
    },
    "2831": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "o",
      "offset": [
        12388,
        13201
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2832": {
      "offset": [
        168,
        219
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "2833": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x84"
    },
    "2835": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x20"
    },
    "2837": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "MSTORE",
      "path": "46"
    },
    "2838": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x0"
    },
    "2840": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "2841": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "DUP2",
      "path": "46"
    },
    "2842": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "MSTORE",
      "path": "46"
    },
    "2843": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x40"
    },
    "2845": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "2846": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "KECCAK256",
      "path": "46"
    },
    "2847": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "SLOAD",
      "path": "46"
    },
    "2848": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0xFF"
    },
    "2850": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "AND",
      "path": "46"
    },
    "2851": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        168,
        219
      ],
      "op": "DUP2",
      "path": "46"
    },
    "2852": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "o",
      "offset": [
        168,
        219
      ],
      "op": "JUMP",
      "path": "46"
    },
    "2853": {
      "offset": [
        509,
        540
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "2854": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "2887": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        509,
        540
      ],
      "op": "DUP2",
      "path": "41"
    },
    "2888": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "o",
      "offset": [
        509,
        540
      ],
      "op": "JUMP",
      "path": "41"
    },
    "2889": {
      "offset": [
        752,
        812
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2890": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x85"
    },
    "2892": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "2894": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2895": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2896": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2897": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2899": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "2900": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "DUP4",
      "path": "45"
    },
    "2901": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2902": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "2904": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2905": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "DUP5",
      "path": "45"
    },
    "2906": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "KECCAK256",
      "path": "45"
    },
    "2907": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2908": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "2909": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2910": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2911": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "DUP3",
      "path": "45"
    },
    "2912": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "2913": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2914": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "KECCAK256",
      "path": "45"
    },
    "2915": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "SLOAD",
      "path": "45"
    },
    "2916": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2918": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2920": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2922": {
      "op": "SHL"
    },
    "2923": {
      "op": "SUB"
    },
    "2924": {
      "offset": [
        752,
        812
      ],
      "op": "AND",
      "path": "45"
    },
    "2925": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        752,
        812
      ],
      "op": "DUP2",
      "path": "45"
    },
    "2926": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "o",
      "offset": [
        752,
        812
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2927": {
      "offset": [
        478,
        505
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "2928": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "2961": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "offset": [
        478,
        505
      ],
      "op": "DUP2",
      "path": "41"
    },
    "2962": {
      "fn": "UniswapV2SpellV1.harvestWStakingRewards",
      "jump": "o",
      "offset": [
        478,
        505
      ],
      "op": "JUMP",
      "path": "41"
    },
    "2963": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2964": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11621,
        11631
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2966": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11634,
        11667
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xB9F"
    },
    "2969": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11652,
        11658
      ],
      "op": "DUP6",
      "path": "45"
    },
    "2970": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11660,
        11666
      ],
      "op": "DUP6",
      "path": "45"
    },
    "2971": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11634,
        11651
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x477"
    },
    "2974": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        11634,
        11667
      ],
      "op": "JUMP",
      "path": "45"
    },
    "2975": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11634,
        11667
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "2976": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11621,
        11667
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "2977": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11621,
        11667
      ],
      "op": "POP",
      "path": "45"
    },
    "2978": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11676,
        11693
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "2980": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11695,
        11706
      ],
      "op": "DUP1",
      "path": "45"
    },
    "2981": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11716
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "3014": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3016": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3018": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3020": {
      "op": "SHL"
    },
    "3021": {
      "op": "SUB"
    },
    "3022": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11739
      ],
      "op": "AND",
      "path": "45"
    },
    "3023": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11739
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xF70AEDD9"
    },
    "3028": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3030": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3031": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3032": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "3037": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "AND",
      "path": "45"
    },
    "3038": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "3040": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "SHL",
      "path": "45"
    },
    "3041": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3042": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3043": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "3045": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "ADD",
      "path": "45"
    },
    "3046": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x80"
    },
    "3048": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3050": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3051": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3052": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP4",
      "path": "45"
    },
    "3053": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "SUB",
      "path": "45"
    },
    "3054": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3055": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP7",
      "path": "45"
    },
    "3056": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3057": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "3058": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3059": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3060": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3061": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xBFD"
    },
    "3064": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3065": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3067": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3068": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "REVERT",
      "path": "45"
    },
    "3069": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3070": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "POP",
      "path": "45"
    },
    "3071": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "GAS",
      "path": "45"
    },
    "3072": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "3073": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3074": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3075": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3076": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xC11"
    },
    "3079": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3080": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3081": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3083": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3084": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "3085": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3086": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3088": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "REVERT",
      "path": "45"
    },
    "3089": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3090": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "POP",
      "path": "45"
    },
    "3091": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "POP",
      "path": "45"
    },
    "3092": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "POP",
      "path": "45"
    },
    "3093": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "POP",
      "path": "45"
    },
    "3094": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3096": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3097": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3098": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "3100": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "NOT",
      "path": "45"
    },
    "3101": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "3103": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3104": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "ADD",
      "path": "45"
    },
    "3105": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "AND",
      "path": "45"
    },
    "3106": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3107": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "ADD",
      "path": "45"
    },
    "3108": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3109": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3111": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3112": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "POP",
      "path": "45"
    },
    "3113": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3114": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "ADD",
      "path": "45"
    },
    "3115": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3116": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xC35"
    },
    "3119": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "3120": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3121": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3947"
    },
    "3124": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        11712,
        11741
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3125": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11712,
        11741
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3126": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11673,
        11741
      ],
      "op": "POP",
      "path": "45"
    },
    "3127": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11673,
        11741
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "3128": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11673,
        11741
      ],
      "op": "POP",
      "path": "45"
    },
    "3129": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11673,
        11741
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "3130": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11673,
        11741
      ],
      "op": "POP",
      "path": "45"
    },
    "3131": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11673,
        11741
      ],
      "op": "POP",
      "path": "45"
    },
    "3132": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11747,
        11761
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3134": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11781,
        11789
      ],
      "op": "DUP5",
      "path": "45"
    },
    "3135": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3137": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3139": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3141": {
      "op": "SHL"
    },
    "3142": {
      "op": "SUB"
    },
    "3143": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11797
      ],
      "op": "AND",
      "path": "45"
    },
    "3144": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11797
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x228CB733"
    },
    "3149": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3151": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3152": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3153": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "3158": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "AND",
      "path": "45"
    },
    "3159": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "3161": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "SHL",
      "path": "45"
    },
    "3162": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3163": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3164": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "3166": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "ADD",
      "path": "45"
    },
    "3167": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "3169": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3171": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3172": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3173": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP4",
      "path": "45"
    },
    "3174": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "SUB",
      "path": "45"
    },
    "3175": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3176": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3178": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP8",
      "path": "45"
    },
    "3179": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3180": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "3181": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3182": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3183": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3184": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xC78"
    },
    "3187": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3188": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3190": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3191": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "REVERT",
      "path": "45"
    },
    "3192": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3193": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "POP",
      "path": "45"
    },
    "3194": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "GAS",
      "path": "45"
    },
    "3195": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "CALL",
      "path": "45"
    },
    "3196": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3197": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3198": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3199": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xC8C"
    },
    "3202": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3203": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3204": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3206": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3207": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "3208": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3209": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3211": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "REVERT",
      "path": "45"
    },
    "3212": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3213": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "POP",
      "path": "45"
    },
    "3214": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "POP",
      "path": "45"
    },
    "3215": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "POP",
      "path": "45"
    },
    "3216": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "POP",
      "path": "45"
    },
    "3217": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3219": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3220": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3221": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "3223": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "NOT",
      "path": "45"
    },
    "3224": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "3226": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3227": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "ADD",
      "path": "45"
    },
    "3228": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "AND",
      "path": "45"
    },
    "3229": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3230": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "ADD",
      "path": "45"
    },
    "3231": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3232": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3234": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3235": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "POP",
      "path": "45"
    },
    "3236": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3237": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "ADD",
      "path": "45"
    },
    "3238": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3239": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xCB0"
    },
    "3242": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "3243": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3244": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3704"
    },
    "3247": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        11764,
        11799
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3248": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11764,
        11799
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3249": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11747,
        11799
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3250": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11747,
        11799
      ],
      "op": "POP",
      "path": "45"
    },
    "3251": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11902,
        11904
      ],
      "op": "DUP4",
      "path": "45",
      "statement": 19
    },
    "3252": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3254": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3256": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3258": {
      "op": "SHL"
    },
    "3259": {
      "op": "SUB"
    },
    "3260": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11904
      ],
      "op": "AND",
      "path": "45"
    },
    "3261": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11861,
        11870
      ],
      "op": "DUP4",
      "path": "45"
    },
    "3262": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3264": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3266": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3268": {
      "op": "SHL"
    },
    "3269": {
      "op": "SUB"
    },
    "3270": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11890
      ],
      "op": "AND",
      "path": "45"
    },
    "3271": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11890
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xA4775772"
    },
    "3276": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11891,
        11897
      ],
      "op": "DUP5",
      "path": "45"
    },
    "3277": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3279": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3280": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3281": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "3286": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "AND",
      "path": "45"
    },
    "3287": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "3289": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "SHL",
      "path": "45"
    },
    "3290": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3291": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3292": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "3294": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "ADD",
      "path": "45"
    },
    "3295": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xCE8"
    },
    "3298": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "3299": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3300": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4214"
    },
    "3303": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        11844,
        11898
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3304": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3305": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "3307": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3309": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3310": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3311": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP4",
      "path": "45"
    },
    "3312": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "SUB",
      "path": "45"
    },
    "3313": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3314": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP7",
      "path": "45"
    },
    "3315": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3316": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "3317": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3318": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3319": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3320": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xD00"
    },
    "3323": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3324": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3326": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3327": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "REVERT",
      "path": "45"
    },
    "3328": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3329": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "POP",
      "path": "45"
    },
    "3330": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "GAS",
      "path": "45"
    },
    "3331": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "3332": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3333": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3334": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3335": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xD14"
    },
    "3338": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3339": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3340": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3342": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3343": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "3344": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3345": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3347": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "REVERT",
      "path": "45"
    },
    "3348": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3349": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "POP",
      "path": "45"
    },
    "3350": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "POP",
      "path": "45"
    },
    "3351": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "POP",
      "path": "45"
    },
    "3352": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "POP",
      "path": "45"
    },
    "3353": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3355": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3356": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3357": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "3359": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "NOT",
      "path": "45"
    },
    "3360": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "3362": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3363": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "ADD",
      "path": "45"
    },
    "3364": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "AND",
      "path": "45"
    },
    "3365": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3366": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "ADD",
      "path": "45"
    },
    "3367": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3368": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3370": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3371": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "POP",
      "path": "45"
    },
    "3372": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3373": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "ADD",
      "path": "45"
    },
    "3374": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3375": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xD38"
    },
    "3378": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "3379": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3380": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3704"
    },
    "3383": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        11844,
        11898
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3384": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11898
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3385": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3387": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3389": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3391": {
      "op": "SHL"
    },
    "3392": {
      "op": "SUB"
    },
    "3393": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11904
      ],
      "op": "AND",
      "path": "45"
    },
    "3394": {
      "branch": 151,
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11844,
        11904
      ],
      "op": "EQ",
      "path": "45"
    },
    "3395": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11836,
        11929
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xD5E"
    },
    "3398": {
      "branch": 151,
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11836,
        11929
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3399": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11836,
        11929
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3401": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11836,
        11929
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3402": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "3406": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "3408": {
      "op": "SHL"
    },
    "3409": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11836,
        11929
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3410": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11836,
        11929
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3411": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11836,
        11929
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "3413": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11836,
        11929
      ],
      "op": "ADD",
      "path": "45"
    },
    "3414": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11836,
        11929
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x186"
    },
    "3417": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11836,
        11929
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3418": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11836,
        11929
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4146"
    },
    "3421": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        11836,
        11929
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3422": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11836,
        11929
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3423": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11956,
        11964
      ],
      "op": "DUP5",
      "path": "45",
      "statement": 20
    },
    "3424": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3426": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3428": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3430": {
      "op": "SHL"
    },
    "3431": {
      "op": "SUB"
    },
    "3432": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11943,
        11964
      ],
      "op": "AND",
      "path": "45"
    },
    "3433": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11943,
        11952
      ],
      "op": "DUP4",
      "path": "45"
    },
    "3434": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3436": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3438": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3440": {
      "op": "SHL"
    },
    "3441": {
      "op": "SUB"
    },
    "3442": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11943,
        11964
      ],
      "op": "AND",
      "path": "45"
    },
    "3443": {
      "branch": 152,
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11943,
        11964
      ],
      "op": "EQ",
      "path": "45"
    },
    "3444": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11935,
        12007
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xD8F"
    },
    "3447": {
      "branch": 152,
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11935,
        12007
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3448": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11935,
        12007
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3450": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11935,
        12007
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3451": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "3455": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "3457": {
      "op": "SHL"
    },
    "3458": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11935,
        12007
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3459": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11935,
        12007
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3460": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11935,
        12007
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "3462": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11935,
        12007
      ],
      "op": "ADD",
      "path": "45"
    },
    "3463": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11935,
        12007
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x186"
    },
    "3466": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11935,
        12007
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3467": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11935,
        12007
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3E0B"
    },
    "3470": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        11935,
        12007
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3471": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11935,
        12007
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3472": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 21,
      "value": "0x40"
    },
    "3474": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3475": {
      "op": "PUSH4",
      "value": "0xD1D6975"
    },
    "3480": {
      "op": "PUSH1",
      "value": "0xE3"
    },
    "3482": {
      "op": "SHL"
    },
    "3483": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3484": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3485": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3487": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3489": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3491": {
      "op": "SHL"
    },
    "3492": {
      "op": "SUB"
    },
    "3493": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12017
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "3526": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12032
      ],
      "op": "AND",
      "path": "45"
    },
    "3527": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12032
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3528": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12032
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x68EB4BA8"
    },
    "3533": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12032
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3534": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xDE0"
    },
    "3537": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3538": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12033,
        12041
      ],
      "op": "DUP9",
      "path": "45"
    },
    "3539": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12033,
        12041
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3540": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12043,
        12049
      ],
      "op": "DUP7",
      "path": "45"
    },
    "3541": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12043,
        12049
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3542": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12051,
        12064
      ],
      "op": "DUP12",
      "path": "45"
    },
    "3543": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12051,
        12064
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "3544": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12051,
        12064
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3545": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "3547": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "ADD",
      "path": "45"
    },
    "3548": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3D6C"
    },
    "3551": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        12013,
        12065
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3552": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3553": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3555": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3557": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3558": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3559": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "DUP4",
      "path": "45"
    },
    "3560": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "SUB",
      "path": "45"
    },
    "3561": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3562": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3564": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "DUP8",
      "path": "45"
    },
    "3565": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3566": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "3567": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3568": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3569": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3570": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xDFA"
    },
    "3573": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3574": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3576": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3577": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "REVERT",
      "path": "45"
    },
    "3578": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3579": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "POP",
      "path": "45"
    },
    "3580": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "GAS",
      "path": "45"
    },
    "3581": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "CALL",
      "path": "45"
    },
    "3582": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3583": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3584": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3585": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xE0E"
    },
    "3588": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3589": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3590": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3592": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3593": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "3594": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3595": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3597": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "REVERT",
      "path": "45"
    },
    "3598": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12013,
        12065
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3599": {
      "op": "POP"
    },
    "3600": {
      "op": "POP"
    },
    "3601": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 22,
      "value": "0x40"
    },
    "3603": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3604": {
      "op": "PUSH4",
      "value": "0xB390C0AB"
    },
    "3609": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "3611": {
      "op": "SHL"
    },
    "3612": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3613": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3614": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3616": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3618": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3620": {
      "op": "SHL"
    },
    "3621": {
      "op": "SUB"
    },
    "3622": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12102
      ],
      "op": "DUP9",
      "path": "45"
    },
    "3623": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12102
      ],
      "op": "AND",
      "path": "45"
    },
    "3624": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12102
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "3625": {
      "op": "POP"
    },
    "3626": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12102
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xB390C0AB"
    },
    "3631": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12102
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "3632": {
      "op": "POP"
    },
    "3633": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xE41"
    },
    "3636": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3637": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12103,
        12109
      ],
      "op": "DUP6",
      "path": "45"
    },
    "3638": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12103,
        12109
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3639": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12111,
        12124
      ],
      "op": "DUP11",
      "path": "45"
    },
    "3640": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12111,
        12124
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "3641": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12111,
        12124
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3642": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "3644": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "ADD",
      "path": "45"
    },
    "3645": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4270"
    },
    "3648": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        12071,
        12125
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3649": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3650": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "3652": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3654": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3655": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3656": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP4",
      "path": "45"
    },
    "3657": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "SUB",
      "path": "45"
    },
    "3658": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3659": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3661": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP8",
      "path": "45"
    },
    "3662": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3663": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "3664": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3665": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3666": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3667": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xE5B"
    },
    "3670": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3671": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3673": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3674": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "REVERT",
      "path": "45"
    },
    "3675": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3676": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "POP",
      "path": "45"
    },
    "3677": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "GAS",
      "path": "45"
    },
    "3678": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "CALL",
      "path": "45"
    },
    "3679": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3680": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3681": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3682": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xE6F"
    },
    "3685": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3686": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3687": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3689": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3690": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "3691": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3692": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3694": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "REVERT",
      "path": "45"
    },
    "3695": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3696": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "POP",
      "path": "45"
    },
    "3697": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "POP",
      "path": "45"
    },
    "3698": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "POP",
      "path": "45"
    },
    "3699": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "POP",
      "path": "45"
    },
    "3700": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3702": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3703": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3704": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "3706": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "NOT",
      "path": "45"
    },
    "3707": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "3709": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3710": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "ADD",
      "path": "45"
    },
    "3711": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "AND",
      "path": "45"
    },
    "3712": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3713": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "ADD",
      "path": "45"
    },
    "3714": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3715": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3717": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3718": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "POP",
      "path": "45"
    },
    "3719": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3720": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "ADD",
      "path": "45"
    },
    "3721": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3722": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xE93"
    },
    "3725": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "3726": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3727": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "3730": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        12071,
        12125
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3731": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3732": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12071,
        12125
      ],
      "op": "POP",
      "path": "45"
    },
    "3733": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12161,
        12209
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 23,
      "value": "0xEA0"
    },
    "3736": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12185,
        12191
      ],
      "op": "DUP9",
      "path": "45"
    },
    "3737": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12193,
        12199
      ],
      "op": "DUP9",
      "path": "45"
    },
    "3738": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12201,
        12204
      ],
      "op": "DUP9",
      "path": "45"
    },
    "3739": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12206,
        12208
      ],
      "op": "DUP8",
      "path": "45"
    },
    "3740": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12161,
        12184
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1BDC"
    },
    "3743": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        12161,
        12209
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3744": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12161,
        12209
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3745": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12240,
        12256
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 24,
      "value": "0xEA9"
    },
    "3748": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12249,
        12255
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3749": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12240,
        12248
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x24EE"
    },
    "3752": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        12240,
        12256
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3753": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        12240,
        12256
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3754": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "POP",
      "path": "45"
    },
    "3755": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "POP",
      "path": "45"
    },
    "3756": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "POP",
      "path": "45"
    },
    "3757": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "POP",
      "path": "45"
    },
    "3758": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "POP",
      "path": "45"
    },
    "3759": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "POP",
      "path": "45"
    },
    "3760": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "POP",
      "path": "45"
    },
    "3761": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "offset": [
        11469,
        12261
      ],
      "op": "POP",
      "path": "45"
    },
    "3762": {
      "fn": "UniswapV2SpellV1.removeLiquidityWStakingRewards",
      "jump": "o",
      "offset": [
        11469,
        12261
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3763": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "JUMPDEST",
      "path": "50"
    },
    "3764": {
      "op": "PUSH4",
      "value": "0xBC197C81"
    },
    "3769": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "3771": {
      "op": "SHL"
    },
    "3772": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "SWAP9",
      "path": "50"
    },
    "3773": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "SWAP8",
      "path": "50"
    },
    "3774": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "POP",
      "path": "50"
    },
    "3775": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "POP",
      "path": "50"
    },
    "3776": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "POP",
      "path": "50"
    },
    "3777": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "POP",
      "path": "50"
    },
    "3778": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "POP",
      "path": "50"
    },
    "3779": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "POP",
      "path": "50"
    },
    "3780": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "POP",
      "path": "50"
    },
    "3781": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        502,
        775
      ],
      "op": "POP",
      "path": "50"
    },
    "3782": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "jump": "o",
      "offset": [
        502,
        775
      ],
      "op": "JUMP",
      "path": "50"
    },
    "3783": {
      "offset": [
        622,
        664
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3784": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "3817": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "offset": [
        622,
        664
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3818": {
      "fn": "ERC1155NaiveReceiver.onERC1155BatchReceived",
      "jump": "o",
      "offset": [
        622,
        664
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3819": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5694,
        6131
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3820": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5815,
        5825
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3822": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5828,
        5861
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xEF7"
    },
    "3825": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5846,
        5852
      ],
      "op": "DUP5",
      "path": "45"
    },
    "3826": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5854,
        5860
      ],
      "op": "DUP5",
      "path": "45"
    },
    "3827": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5828,
        5845
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x477"
    },
    "3830": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "jump": "i",
      "offset": [
        5828,
        5861
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3831": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5828,
        5861
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3832": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5815,
        5861
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3833": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5815,
        5861
      ],
      "op": "POP",
      "path": "45"
    },
    "3834": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5893,
        5938
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 25,
      "value": "0xF05"
    },
    "3837": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5914,
        5920
      ],
      "op": "DUP5",
      "path": "45"
    },
    "3838": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5922,
        5928
      ],
      "op": "DUP5",
      "path": "45"
    },
    "3839": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5930,
        5933
      ],
      "op": "DUP5",
      "path": "45"
    },
    "3840": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5935,
        5937
      ],
      "op": "DUP5",
      "path": "45"
    },
    "3841": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5893,
        5913
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x261A"
    },
    "3844": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "jump": "i",
      "offset": [
        5893,
        5938
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3845": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5893,
        5938
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3846": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5970,
        6026
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 26,
      "value": "0xF8A"
    },
    "3849": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5986,
        5988
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3850": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5997,
        5999
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3851": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3853": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "3855": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "3857": {
      "op": "SHL"
    },
    "3858": {
      "op": "SUB"
    },
    "3859": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6010
      ],
      "op": "AND",
      "path": "45"
    },
    "3860": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6010
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x70A08231"
    },
    "3865": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        6019,
        6023
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "3866": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3868": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3869": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3870": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "3875": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "AND",
      "path": "45"
    },
    "3876": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "3878": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "SHL",
      "path": "45"
    },
    "3879": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3880": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3881": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "3883": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "ADD",
      "path": "45"
    },
    "3884": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xF35"
    },
    "3887": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "3888": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3889": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C81"
    },
    "3892": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "jump": "i",
      "offset": [
        5990,
        6025
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3893": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3894": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "3896": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3898": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3899": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3900": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP4",
      "path": "45"
    },
    "3901": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "SUB",
      "path": "45"
    },
    "3902": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3903": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP7",
      "path": "45"
    },
    "3904": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3905": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "3906": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3907": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3908": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3909": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xF4D"
    },
    "3912": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3913": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3915": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3916": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "REVERT",
      "path": "45"
    },
    "3917": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3918": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "POP",
      "path": "45"
    },
    "3919": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "GAS",
      "path": "45"
    },
    "3920": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "3921": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3922": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3923": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "3924": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xF61"
    },
    "3927": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "3928": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3929": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3931": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3932": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "3933": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3934": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "3936": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "REVERT",
      "path": "45"
    },
    "3937": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3938": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "POP",
      "path": "45"
    },
    "3939": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "POP",
      "path": "45"
    },
    "3940": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "POP",
      "path": "45"
    },
    "3941": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "POP",
      "path": "45"
    },
    "3942": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3944": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "3945": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "3946": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "3948": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "NOT",
      "path": "45"
    },
    "3949": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "3951": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3952": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "ADD",
      "path": "45"
    },
    "3953": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "AND",
      "path": "45"
    },
    "3954": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP3",
      "path": "45"
    },
    "3955": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "ADD",
      "path": "45"
    },
    "3956": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP1",
      "path": "45"
    },
    "3957": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "3959": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "3960": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "POP",
      "path": "45"
    },
    "3961": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "DUP2",
      "path": "45"
    },
    "3962": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "ADD",
      "path": "45"
    },
    "3963": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3964": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xF85"
    },
    "3967": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "3968": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "3969": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "3972": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "jump": "i",
      "offset": [
        5990,
        6025
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3973": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5990,
        6025
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3974": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5970,
        5985
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2C3E"
    },
    "3977": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "jump": "i",
      "offset": [
        5970,
        6026
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3978": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        5970,
        6026
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3979": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        6069,
        6082
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 27,
      "value": "0xF92"
    },
    "3982": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        6069,
        6080
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2D60"
    },
    "3985": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "jump": "i",
      "offset": [
        6069,
        6082
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3986": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        6069,
        6082
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3987": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        6088,
        6104
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 28,
      "value": "0xF9B"
    },
    "3990": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        6097,
        6103
      ],
      "op": "DUP5",
      "path": "45"
    },
    "3991": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        6088,
        6096
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x24EE"
    },
    "3994": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "jump": "i",
      "offset": [
        6088,
        6104
      ],
      "op": "JUMP",
      "path": "45"
    },
    "3995": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        6088,
        6104
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "3996": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        6110,
        6126
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 29,
      "value": "0x471"
    },
    "3999": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        6119,
        6125
      ],
      "op": "DUP4",
      "path": "45"
    },
    "4000": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "offset": [
        6110,
        6118
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x24EE"
    },
    "4003": {
      "fn": "UniswapV2SpellV1.addLiquidityWERC20",
      "jump": "i",
      "offset": [
        6110,
        6126
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4004": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4005": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6549,
        6559
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4007": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6562,
        6595
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xFB0"
    },
    "4010": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6580,
        6586
      ],
      "op": "DUP6",
      "path": "45"
    },
    "4011": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6588,
        6594
      ],
      "op": "DUP6",
      "path": "45"
    },
    "4012": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6562,
        6579
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x477"
    },
    "4015": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        6562,
        6595
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4016": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6562,
        6595
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4017": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6549,
        6595
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4018": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6549,
        6595
      ],
      "op": "POP",
      "path": "45"
    },
    "4019": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6601,
        6615
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4021": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6635,
        6643
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4022": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4024": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4026": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4028": {
      "op": "SHL"
    },
    "4029": {
      "op": "SUB"
    },
    "4030": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6651
      ],
      "op": "AND",
      "path": "45"
    },
    "4031": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6651
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x228CB733"
    },
    "4036": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4038": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4039": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4040": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "4045": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "AND",
      "path": "45"
    },
    "4046": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "4048": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "SHL",
      "path": "45"
    },
    "4049": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4050": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4051": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "4053": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "ADD",
      "path": "45"
    },
    "4054": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "4056": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4058": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4059": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4060": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP4",
      "path": "45"
    },
    "4061": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "SUB",
      "path": "45"
    },
    "4062": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4063": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4065": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP8",
      "path": "45"
    },
    "4066": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4067": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "4068": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4069": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4070": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4071": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xFEF"
    },
    "4074": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4075": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4077": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4078": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "REVERT",
      "path": "45"
    },
    "4079": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4080": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "POP",
      "path": "45"
    },
    "4081": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "GAS",
      "path": "45"
    },
    "4082": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "CALL",
      "path": "45"
    },
    "4083": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4084": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4085": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4086": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1003"
    },
    "4089": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4090": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4091": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4093": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4094": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "4095": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4096": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4098": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "REVERT",
      "path": "45"
    },
    "4099": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4100": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "POP",
      "path": "45"
    },
    "4101": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "POP",
      "path": "45"
    },
    "4102": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "POP",
      "path": "45"
    },
    "4103": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "POP",
      "path": "45"
    },
    "4104": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4106": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4107": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4108": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "4110": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "NOT",
      "path": "45"
    },
    "4111": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "4113": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4114": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "ADD",
      "path": "45"
    },
    "4115": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "AND",
      "path": "45"
    },
    "4116": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4117": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "ADD",
      "path": "45"
    },
    "4118": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4119": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4121": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4122": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "POP",
      "path": "45"
    },
    "4123": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4124": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "ADD",
      "path": "45"
    },
    "4125": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4126": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1027"
    },
    "4129": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "4130": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4131": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3704"
    },
    "4134": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        6618,
        6653
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4135": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6618,
        6653
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4136": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6601,
        6653
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4137": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6601,
        6653
      ],
      "op": "POP",
      "path": "45"
    },
    "4138": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6686,
        6731
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 30,
      "value": "0x1035"
    },
    "4141": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6707,
        6713
      ],
      "op": "DUP7",
      "path": "45"
    },
    "4142": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6715,
        6721
      ],
      "op": "DUP7",
      "path": "45"
    },
    "4143": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6723,
        6726
      ],
      "op": "DUP7",
      "path": "45"
    },
    "4144": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6728,
        6730
      ],
      "op": "DUP6",
      "path": "45"
    },
    "4145": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6686,
        6706
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x261A"
    },
    "4148": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        6686,
        6731
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4149": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6686,
        6731
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4150": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6771,
        6788
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4152": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6790,
        6801
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4153": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6803,
        6816
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4155": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6824
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "4188": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4190": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4192": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4194": {
      "op": "SHL"
    },
    "4195": {
      "op": "SUB"
    },
    "4196": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6847
      ],
      "op": "AND",
      "path": "45"
    },
    "4197": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6847
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xF70AEDD9"
    },
    "4202": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4204": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4205": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4206": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "4211": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "AND",
      "path": "45"
    },
    "4212": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "4214": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "SHL",
      "path": "45"
    },
    "4215": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4216": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4217": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "4219": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "ADD",
      "path": "45"
    },
    "4220": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x80"
    },
    "4222": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4224": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4225": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4226": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP4",
      "path": "45"
    },
    "4227": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "SUB",
      "path": "45"
    },
    "4228": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4229": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP7",
      "path": "45"
    },
    "4230": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4231": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "4232": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4233": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4234": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4235": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1093"
    },
    "4238": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4239": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4241": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4242": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "REVERT",
      "path": "45"
    },
    "4243": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4244": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "POP",
      "path": "45"
    },
    "4245": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "GAS",
      "path": "45"
    },
    "4246": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "4247": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4248": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4249": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4250": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x10A7"
    },
    "4253": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4254": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4255": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4257": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4258": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "4259": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4260": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4262": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "REVERT",
      "path": "45"
    },
    "4263": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4264": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "POP",
      "path": "45"
    },
    "4265": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "POP",
      "path": "45"
    },
    "4266": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "POP",
      "path": "45"
    },
    "4267": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "POP",
      "path": "45"
    },
    "4268": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4270": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4271": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4272": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "4274": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "NOT",
      "path": "45"
    },
    "4275": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "4277": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4278": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "ADD",
      "path": "45"
    },
    "4279": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "AND",
      "path": "45"
    },
    "4280": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4281": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "ADD",
      "path": "45"
    },
    "4282": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4283": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4285": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4286": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "POP",
      "path": "45"
    },
    "4287": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4288": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "ADD",
      "path": "45"
    },
    "4289": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4290": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x10CB"
    },
    "4293": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "4294": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4295": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3947"
    },
    "4298": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        6820,
        6849
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4299": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6820,
        6849
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4300": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6768,
        6849
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "4301": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6768,
        6849
      ],
      "op": "SWAP6",
      "path": "45"
    },
    "4302": {
      "op": "POP"
    },
    "4303": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6768,
        6849
      ],
      "op": "SWAP4",
      "path": "45"
    },
    "4304": {
      "op": "POP"
    },
    "4305": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6768,
        6849
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "4306": {
      "op": "POP"
    },
    "4307": {
      "op": "POP"
    },
    "4308": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6859,
        6871
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4309": {
      "branch": 153,
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6859,
        6871
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4310": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6855,
        7173
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x12BA"
    },
    "4313": {
      "branch": 153,
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6855,
        7173
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4314": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6947,
        6949
      ],
      "op": "DUP5",
      "path": "45",
      "statement": 31
    },
    "4315": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4317": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4319": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4321": {
      "op": "SHL"
    },
    "4322": {
      "op": "SUB"
    },
    "4323": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6949
      ],
      "op": "AND",
      "path": "45"
    },
    "4324": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6906,
        6915
      ],
      "op": "DUP4",
      "path": "45"
    },
    "4325": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4327": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4329": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4331": {
      "op": "SHL"
    },
    "4332": {
      "op": "SUB"
    },
    "4333": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6935
      ],
      "op": "AND",
      "path": "45"
    },
    "4334": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6935
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xA4775772"
    },
    "4339": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6936,
        6942
      ],
      "op": "DUP5",
      "path": "45"
    },
    "4340": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4342": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4343": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4344": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "4349": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "AND",
      "path": "45"
    },
    "4350": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "4352": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "SHL",
      "path": "45"
    },
    "4353": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4354": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4355": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "4357": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "ADD",
      "path": "45"
    },
    "4358": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x110F"
    },
    "4361": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "4362": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4363": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4214"
    },
    "4366": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        6889,
        6943
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4367": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4368": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "4370": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4372": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4373": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4374": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP4",
      "path": "45"
    },
    "4375": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "SUB",
      "path": "45"
    },
    "4376": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4377": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP7",
      "path": "45"
    },
    "4378": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4379": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "4380": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4381": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4382": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4383": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1127"
    },
    "4386": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4387": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4389": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4390": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "REVERT",
      "path": "45"
    },
    "4391": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4392": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "POP",
      "path": "45"
    },
    "4393": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "GAS",
      "path": "45"
    },
    "4394": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "4395": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4396": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4397": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4398": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x113B"
    },
    "4401": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4402": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4403": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4405": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4406": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "4407": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4408": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4410": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "REVERT",
      "path": "45"
    },
    "4411": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4412": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "POP",
      "path": "45"
    },
    "4413": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "POP",
      "path": "45"
    },
    "4414": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "POP",
      "path": "45"
    },
    "4415": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "POP",
      "path": "45"
    },
    "4416": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4418": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4419": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4420": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "4422": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "NOT",
      "path": "45"
    },
    "4423": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "4425": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4426": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "ADD",
      "path": "45"
    },
    "4427": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "AND",
      "path": "45"
    },
    "4428": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4429": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "ADD",
      "path": "45"
    },
    "4430": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4431": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4433": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4434": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "POP",
      "path": "45"
    },
    "4435": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4436": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "ADD",
      "path": "45"
    },
    "4437": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4438": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x115F"
    },
    "4441": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "4442": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4443": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3704"
    },
    "4446": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        6889,
        6943
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4447": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6943
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4448": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4450": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4452": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4454": {
      "op": "SHL"
    },
    "4455": {
      "op": "SUB"
    },
    "4456": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6949
      ],
      "op": "AND",
      "path": "45"
    },
    "4457": {
      "branch": 154,
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6889,
        6949
      ],
      "op": "EQ",
      "path": "45"
    },
    "4458": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6881,
        6974
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1185"
    },
    "4461": {
      "branch": 154,
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6881,
        6974
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4462": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6881,
        6974
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4464": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6881,
        6974
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4465": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "4469": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "4471": {
      "op": "SHL"
    },
    "4472": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6881,
        6974
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4473": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6881,
        6974
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4474": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6881,
        6974
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "4476": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6881,
        6974
      ],
      "op": "ADD",
      "path": "45"
    },
    "4477": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6881,
        6974
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x186"
    },
    "4480": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6881,
        6974
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4481": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6881,
        6974
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4146"
    },
    "4484": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        6881,
        6974
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4485": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6881,
        6974
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4486": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7003,
        7011
      ],
      "op": "DUP6",
      "path": "45",
      "statement": 32
    },
    "4487": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4489": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4491": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4493": {
      "op": "SHL"
    },
    "4494": {
      "op": "SUB"
    },
    "4495": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6990,
        7011
      ],
      "op": "AND",
      "path": "45"
    },
    "4496": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6990,
        6999
      ],
      "op": "DUP4",
      "path": "45"
    },
    "4497": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4499": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4501": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4503": {
      "op": "SHL"
    },
    "4504": {
      "op": "SUB"
    },
    "4505": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6990,
        7011
      ],
      "op": "AND",
      "path": "45"
    },
    "4506": {
      "branch": 155,
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6990,
        7011
      ],
      "op": "EQ",
      "path": "45"
    },
    "4507": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6982,
        7054
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x11B6"
    },
    "4510": {
      "branch": 155,
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6982,
        7054
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4511": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6982,
        7054
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4513": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6982,
        7054
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4514": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "4518": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "4520": {
      "op": "SHL"
    },
    "4521": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6982,
        7054
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4522": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6982,
        7054
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4523": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6982,
        7054
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "4525": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6982,
        7054
      ],
      "op": "ADD",
      "path": "45"
    },
    "4526": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6982,
        7054
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x186"
    },
    "4529": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6982,
        7054
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4530": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6982,
        7054
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3E0B"
    },
    "4533": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        6982,
        7054
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4534": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6982,
        7054
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4535": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 33,
      "value": "0x40"
    },
    "4537": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4538": {
      "op": "PUSH4",
      "value": "0xD1D6975"
    },
    "4543": {
      "op": "PUSH1",
      "value": "0xE3"
    },
    "4545": {
      "op": "SHL"
    },
    "4546": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4547": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4548": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4550": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4552": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4554": {
      "op": "SHL"
    },
    "4555": {
      "op": "SUB"
    },
    "4556": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7066
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "4589": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7081
      ],
      "op": "AND",
      "path": "45"
    },
    "4590": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7081
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4591": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7081
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x68EB4BA8"
    },
    "4596": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7081
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4597": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1206"
    },
    "4600": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4601": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7082,
        7090
      ],
      "op": "DUP10",
      "path": "45"
    },
    "4602": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7082,
        7090
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4603": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7092,
        7098
      ],
      "op": "DUP7",
      "path": "45"
    },
    "4604": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7092,
        7098
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4605": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7100,
        7108
      ],
      "op": "DUP7",
      "path": "45"
    },
    "4606": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7100,
        7108
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4607": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "4609": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "ADD",
      "path": "45"
    },
    "4610": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3D6C"
    },
    "4613": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7062,
        7109
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4614": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4615": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4617": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4619": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4620": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4621": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "DUP4",
      "path": "45"
    },
    "4622": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "SUB",
      "path": "45"
    },
    "4623": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4624": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4626": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "DUP8",
      "path": "45"
    },
    "4627": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4628": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "4629": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4630": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4631": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4632": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1220"
    },
    "4635": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4636": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4638": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4639": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "REVERT",
      "path": "45"
    },
    "4640": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4641": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "POP",
      "path": "45"
    },
    "4642": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "GAS",
      "path": "45"
    },
    "4643": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "CALL",
      "path": "45"
    },
    "4644": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4645": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4646": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4647": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1234"
    },
    "4650": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4651": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4652": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4654": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4655": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "4656": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4657": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4659": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "REVERT",
      "path": "45"
    },
    "4660": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7062,
        7109
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4661": {
      "op": "POP"
    },
    "4662": {
      "op": "POP"
    },
    "4663": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 34,
      "value": "0x40"
    },
    "4665": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4666": {
      "op": "PUSH4",
      "value": "0xB390C0AB"
    },
    "4671": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "4673": {
      "op": "SHL"
    },
    "4674": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4675": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4676": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4678": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4680": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4682": {
      "op": "SHL"
    },
    "4683": {
      "op": "SUB"
    },
    "4684": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7148
      ],
      "op": "DUP10",
      "path": "45"
    },
    "4685": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7148
      ],
      "op": "AND",
      "path": "45"
    },
    "4686": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7148
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "4687": {
      "op": "POP"
    },
    "4688": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7148
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xB390C0AB"
    },
    "4693": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7148
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "4694": {
      "op": "POP"
    },
    "4695": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1266"
    },
    "4698": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4699": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7149,
        7155
      ],
      "op": "DUP6",
      "path": "45"
    },
    "4700": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7149,
        7155
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4701": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7157,
        7165
      ],
      "op": "DUP6",
      "path": "45"
    },
    "4702": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7157,
        7165
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4703": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "4705": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "ADD",
      "path": "45"
    },
    "4706": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4270"
    },
    "4709": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7117,
        7166
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4710": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4711": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "4713": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4715": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4716": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4717": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP4",
      "path": "45"
    },
    "4718": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "SUB",
      "path": "45"
    },
    "4719": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4720": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4722": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP8",
      "path": "45"
    },
    "4723": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4724": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "4725": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4726": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4727": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4728": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1280"
    },
    "4731": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4732": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4734": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4735": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "REVERT",
      "path": "45"
    },
    "4736": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4737": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "POP",
      "path": "45"
    },
    "4738": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "GAS",
      "path": "45"
    },
    "4739": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "CALL",
      "path": "45"
    },
    "4740": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4741": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4742": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4743": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1294"
    },
    "4746": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4747": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4748": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4750": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4751": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "4752": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4753": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4755": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "REVERT",
      "path": "45"
    },
    "4756": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4757": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "POP",
      "path": "45"
    },
    "4758": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "POP",
      "path": "45"
    },
    "4759": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "POP",
      "path": "45"
    },
    "4760": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "POP",
      "path": "45"
    },
    "4761": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4763": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4764": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4765": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "4767": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "NOT",
      "path": "45"
    },
    "4768": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "4770": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4771": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "ADD",
      "path": "45"
    },
    "4772": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "AND",
      "path": "45"
    },
    "4773": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4774": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "ADD",
      "path": "45"
    },
    "4775": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4776": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4778": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4779": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "POP",
      "path": "45"
    },
    "4780": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4781": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "ADD",
      "path": "45"
    },
    "4782": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4783": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x12B8"
    },
    "4786": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "4787": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4788": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "4791": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7117,
        7166
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4792": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4793": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7117,
        7166
      ],
      "op": "POP",
      "path": "45"
    },
    "4794": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6855,
        7173
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4795": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7204,
        7231
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 35,
      "value": "0x12C4"
    },
    "4798": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7218,
        7220
      ],
      "op": "DUP6",
      "path": "45"
    },
    "4799": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7222,
        7230
      ],
      "op": "DUP8",
      "path": "45"
    },
    "4800": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7204,
        7217
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2477"
    },
    "4803": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7204,
        7231
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4804": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7204,
        7231
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4805": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4807": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4808": {
      "op": "PUSH4",
      "value": "0x70A08231"
    },
    "4813": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "4815": {
      "op": "SHL"
    },
    "4816": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4817": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4818": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7237,
        7248
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4820": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7237,
        7248
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4821": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4823": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4825": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4827": {
      "op": "SHL"
    },
    "4828": {
      "op": "SUB"
    },
    "4829": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7271
      ],
      "op": "DUP8",
      "path": "45"
    },
    "4830": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7271
      ],
      "op": "AND",
      "path": "45"
    },
    "4831": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7271
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4832": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7271
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x70A08231"
    },
    "4837": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7271
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4838": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x12F3"
    },
    "4841": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4842": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7280,
        7284
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "4843": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7280,
        7284
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4844": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "4846": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "ADD",
      "path": "45"
    },
    "4847": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C81"
    },
    "4850": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7251,
        7286
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4851": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4852": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "4854": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4856": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4857": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4858": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP4",
      "path": "45"
    },
    "4859": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "SUB",
      "path": "45"
    },
    "4860": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4861": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP7",
      "path": "45"
    },
    "4862": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4863": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "4864": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4865": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4866": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4867": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x130B"
    },
    "4870": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4871": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4873": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4874": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "REVERT",
      "path": "45"
    },
    "4875": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4876": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "POP",
      "path": "45"
    },
    "4877": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "GAS",
      "path": "45"
    },
    "4878": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "4879": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4880": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4881": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4882": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x131F"
    },
    "4885": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "4886": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4887": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4889": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4890": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "4891": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4892": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4894": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "REVERT",
      "path": "45"
    },
    "4895": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4896": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "POP",
      "path": "45"
    },
    "4897": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "POP",
      "path": "45"
    },
    "4898": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "POP",
      "path": "45"
    },
    "4899": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "POP",
      "path": "45"
    },
    "4900": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4902": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4903": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "4904": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "4906": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "NOT",
      "path": "45"
    },
    "4907": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "4909": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4910": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "ADD",
      "path": "45"
    },
    "4911": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "AND",
      "path": "45"
    },
    "4912": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4913": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "ADD",
      "path": "45"
    },
    "4914": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4915": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4917": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4918": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "POP",
      "path": "45"
    },
    "4919": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4920": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "ADD",
      "path": "45"
    },
    "4921": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4922": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1343"
    },
    "4925": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "4926": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4927": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "4930": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7251,
        7286
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4931": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7251,
        7286
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4932": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7237,
        7286
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4933": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7237,
        7286
      ],
      "op": "POP",
      "path": "45"
    },
    "4934": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7292,
        7299
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4936": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7319,
        7327
      ],
      "op": "DUP8",
      "path": "45"
    },
    "4937": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4939": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "4941": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "4943": {
      "op": "SHL"
    },
    "4944": {
      "op": "SUB"
    },
    "4945": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7333
      ],
      "op": "AND",
      "path": "45"
    },
    "4946": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7333
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xA0712D68"
    },
    "4951": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7334,
        7340
      ],
      "op": "DUP4",
      "path": "45"
    },
    "4952": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4954": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4955": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP3",
      "path": "45"
    },
    "4956": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "4961": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "AND",
      "path": "45"
    },
    "4962": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "4964": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "SHL",
      "path": "45"
    },
    "4965": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4966": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "4967": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "4969": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "ADD",
      "path": "45"
    },
    "4970": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1373"
    },
    "4973": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "4974": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "4975": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4214"
    },
    "4978": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7302,
        7341
      ],
      "op": "JUMP",
      "path": "45"
    },
    "4979": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "4980": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "4982": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "4984": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "4985": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4986": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP4",
      "path": "45"
    },
    "4987": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "SUB",
      "path": "45"
    },
    "4988": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP2",
      "path": "45"
    },
    "4989": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "4991": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP8",
      "path": "45"
    },
    "4992": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4993": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "4994": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4995": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP1",
      "path": "45"
    },
    "4996": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "4997": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x138D"
    },
    "5000": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "5001": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5003": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5004": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "REVERT",
      "path": "45"
    },
    "5005": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5006": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "POP",
      "path": "45"
    },
    "5007": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "GAS",
      "path": "45"
    },
    "5008": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "CALL",
      "path": "45"
    },
    "5009": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5010": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5011": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5012": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x13A1"
    },
    "5015": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "5016": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "5017": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5019": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5020": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "5021": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "5022": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5024": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "REVERT",
      "path": "45"
    },
    "5025": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5026": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "POP",
      "path": "45"
    },
    "5027": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "POP",
      "path": "45"
    },
    "5028": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "POP",
      "path": "45"
    },
    "5029": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "POP",
      "path": "45"
    },
    "5030": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "5032": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "5033": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "5034": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "5036": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "NOT",
      "path": "45"
    },
    "5037": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "5039": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP3",
      "path": "45"
    },
    "5040": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "ADD",
      "path": "45"
    },
    "5041": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "AND",
      "path": "45"
    },
    "5042": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP3",
      "path": "45"
    },
    "5043": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "ADD",
      "path": "45"
    },
    "5044": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5045": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "5047": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "5048": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "POP",
      "path": "45"
    },
    "5049": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "DUP2",
      "path": "45"
    },
    "5050": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "ADD",
      "path": "45"
    },
    "5051": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5052": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x13C5"
    },
    "5055": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "5056": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5057": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "5060": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7302,
        7341
      ],
      "op": "JUMP",
      "path": "45"
    },
    "5061": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7302,
        7341
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5062": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "5064": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "5065": {
      "op": "PUSH4",
      "value": "0xE985E9C5"
    },
    "5070": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "5072": {
      "op": "SHL"
    },
    "5073": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP2",
      "path": "45"
    },
    "5074": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "5075": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7292,
        7341
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5076": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7292,
        7341
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "5077": {
      "op": "POP"
    },
    "5078": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5080": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5082": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "5084": {
      "op": "SHL"
    },
    "5085": {
      "op": "SUB"
    },
    "5086": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7395
      ],
      "op": "DUP10",
      "path": "45"
    },
    "5087": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7395
      ],
      "op": "AND",
      "path": "45"
    },
    "5088": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7395
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5089": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7395
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xE985E9C5"
    },
    "5094": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7395
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5095": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1416"
    },
    "5098": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5099": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7404,
        7408
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "5100": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7404,
        7408
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5101": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7419,
        7423
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "5134": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7419,
        7423
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5135": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "5137": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "ADD",
      "path": "45"
    },
    "5138": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C95"
    },
    "5141": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7352,
        7425
      ],
      "op": "JUMP",
      "path": "45"
    },
    "5142": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5143": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "5145": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "5147": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "5148": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5149": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP4",
      "path": "45"
    },
    "5150": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "SUB",
      "path": "45"
    },
    "5151": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP2",
      "path": "45"
    },
    "5152": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP7",
      "path": "45"
    },
    "5153": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5154": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "5155": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5156": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5157": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5158": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x142E"
    },
    "5161": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "5162": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5164": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5165": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "REVERT",
      "path": "45"
    },
    "5166": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5167": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "POP",
      "path": "45"
    },
    "5168": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "GAS",
      "path": "45"
    },
    "5169": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "5170": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5171": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5172": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5173": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1442"
    },
    "5176": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "5177": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "5178": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5180": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5181": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "5182": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "5183": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5185": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "REVERT",
      "path": "45"
    },
    "5186": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5187": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "POP",
      "path": "45"
    },
    "5188": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "POP",
      "path": "45"
    },
    "5189": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "POP",
      "path": "45"
    },
    "5190": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "POP",
      "path": "45"
    },
    "5191": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "5193": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "5194": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "5195": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "5197": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "NOT",
      "path": "45"
    },
    "5198": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "5200": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP3",
      "path": "45"
    },
    "5201": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "ADD",
      "path": "45"
    },
    "5202": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "AND",
      "path": "45"
    },
    "5203": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP3",
      "path": "45"
    },
    "5204": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "ADD",
      "path": "45"
    },
    "5205": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5206": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "5208": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "5209": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "POP",
      "path": "45"
    },
    "5210": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "DUP2",
      "path": "45"
    },
    "5211": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "ADD",
      "path": "45"
    },
    "5212": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5213": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1466"
    },
    "5216": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "5217": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5218": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3B22"
    },
    "5221": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7352,
        7425
      ],
      "op": "JUMP",
      "path": "45"
    },
    "5222": {
      "branch": 156,
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7352,
        7425
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5223": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7347,
        7507
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x14EC"
    },
    "5226": {
      "branch": 156,
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7347,
        7507
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "5227": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 36,
      "value": "0x40"
    },
    "5229": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "5230": {
      "op": "PUSH4",
      "value": "0xA22CB465"
    },
    "5235": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "5237": {
      "op": "SHL"
    },
    "5238": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "DUP2",
      "path": "45"
    },
    "5239": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "5240": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5242": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5244": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "5246": {
      "op": "SHL"
    },
    "5247": {
      "op": "SUB"
    },
    "5248": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7479
      ],
      "op": "DUP10",
      "path": "45"
    },
    "5249": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7479
      ],
      "op": "AND",
      "path": "45"
    },
    "5250": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7479
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5251": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7479
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xA22CB465"
    },
    "5256": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7479
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5257": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x14B9"
    },
    "5260": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5261": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7488,
        7492
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "5294": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7488,
        7492
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5295": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7495,
        7499
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1"
    },
    "5297": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7495,
        7499
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5298": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "5300": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "ADD",
      "path": "45"
    },
    "5301": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3D38"
    },
    "5304": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7435,
        7500
      ],
      "op": "JUMP",
      "path": "45"
    },
    "5305": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5306": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5308": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "5310": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "5311": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5312": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "DUP4",
      "path": "45"
    },
    "5313": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "SUB",
      "path": "45"
    },
    "5314": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "DUP2",
      "path": "45"
    },
    "5315": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5317": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "DUP8",
      "path": "45"
    },
    "5318": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5319": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "5320": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5321": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5322": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5323": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x14D3"
    },
    "5326": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "5327": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5329": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5330": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "REVERT",
      "path": "45"
    },
    "5331": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5332": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "POP",
      "path": "45"
    },
    "5333": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "GAS",
      "path": "45"
    },
    "5334": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "CALL",
      "path": "45"
    },
    "5335": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5336": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5337": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5338": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x14E7"
    },
    "5341": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "5342": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "5343": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5345": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5346": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "5347": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "5348": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5350": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "REVERT",
      "path": "45"
    },
    "5351": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5352": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "POP",
      "path": "45"
    },
    "5353": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "POP",
      "path": "45"
    },
    "5354": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "POP",
      "path": "45"
    },
    "5355": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7435,
        7500
      ],
      "op": "POP",
      "path": "45"
    },
    "5356": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7347,
        7507
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5357": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 37,
      "value": "0x40"
    },
    "5359": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "5360": {
      "op": "PUSH4",
      "value": "0x314568D9"
    },
    "5365": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "5367": {
      "op": "SHL"
    },
    "5368": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "DUP2",
      "path": "45"
    },
    "5369": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "5370": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5372": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5374": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "5376": {
      "op": "SHL"
    },
    "5377": {
      "op": "SUB"
    },
    "5378": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7516
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "5411": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7530
      ],
      "op": "AND",
      "path": "45"
    },
    "5412": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7530
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5413": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7530
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x314568D9"
    },
    "5418": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7530
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5419": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x153C"
    },
    "5422": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5423": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7539,
        7547
      ],
      "op": "DUP12",
      "path": "45"
    },
    "5424": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7539,
        7547
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5425": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7550,
        7552
      ],
      "op": "DUP6",
      "path": "45"
    },
    "5426": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7550,
        7552
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5427": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7554,
        7560
      ],
      "op": "DUP8",
      "path": "45"
    },
    "5428": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7554,
        7560
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "5429": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "5431": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "ADD",
      "path": "45"
    },
    "5432": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3D6C"
    },
    "5435": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7512,
        7561
      ],
      "op": "JUMP",
      "path": "45"
    },
    "5436": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5437": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5439": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "5441": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "5442": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5443": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "DUP4",
      "path": "45"
    },
    "5444": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "SUB",
      "path": "45"
    },
    "5445": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "DUP2",
      "path": "45"
    },
    "5446": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5448": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "DUP8",
      "path": "45"
    },
    "5449": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5450": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "5451": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5452": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5453": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5454": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1556"
    },
    "5457": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "5458": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5460": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5461": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "REVERT",
      "path": "45"
    },
    "5462": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5463": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "POP",
      "path": "45"
    },
    "5464": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "GAS",
      "path": "45"
    },
    "5465": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "CALL",
      "path": "45"
    },
    "5466": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5467": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5468": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "5469": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x156A"
    },
    "5472": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "5473": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "5474": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5476": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "DUP1",
      "path": "45"
    },
    "5477": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "5478": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "5479": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "5481": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "REVERT",
      "path": "45"
    },
    "5482": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5483": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "POP",
      "path": "45"
    },
    "5484": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "POP",
      "path": "45"
    },
    "5485": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "POP",
      "path": "45"
    },
    "5486": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7512,
        7561
      ],
      "op": "POP",
      "path": "45"
    },
    "5487": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7604,
        7617
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 38,
      "value": "0x1576"
    },
    "5490": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7604,
        7615
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2D60"
    },
    "5493": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7604,
        7617
      ],
      "op": "JUMP",
      "path": "45"
    },
    "5494": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7604,
        7617
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5495": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7623,
        7639
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 39,
      "value": "0x157F"
    },
    "5498": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7632,
        7638
      ],
      "op": "DUP12",
      "path": "45"
    },
    "5499": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7623,
        7631
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x24EE"
    },
    "5502": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7623,
        7639
      ],
      "op": "JUMP",
      "path": "45"
    },
    "5503": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7623,
        7639
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5504": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7645,
        7661
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 40,
      "value": "0x1588"
    },
    "5507": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7654,
        7660
      ],
      "op": "DUP11",
      "path": "45"
    },
    "5508": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7645,
        7653
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x24EE"
    },
    "5511": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7645,
        7661
      ],
      "op": "JUMP",
      "path": "45"
    },
    "5512": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7645,
        7661
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5513": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7692,
        7708
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 41,
      "value": "0x1591"
    },
    "5516": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7701,
        7707
      ],
      "op": "DUP7",
      "path": "45"
    },
    "5517": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7692,
        7700
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x24EE"
    },
    "5520": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "i",
      "offset": [
        7692,
        7708
      ],
      "op": "JUMP",
      "path": "45"
    },
    "5521": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        7692,
        7708
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "5522": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "POP",
      "path": "45"
    },
    "5523": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "POP",
      "path": "45"
    },
    "5524": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "POP",
      "path": "45"
    },
    "5525": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "POP",
      "path": "45"
    },
    "5526": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "POP",
      "path": "45"
    },
    "5527": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "POP",
      "path": "45"
    },
    "5528": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "POP",
      "path": "45"
    },
    "5529": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "POP",
      "path": "45"
    },
    "5530": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "POP",
      "path": "45"
    },
    "5531": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "POP",
      "path": "45"
    },
    "5532": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        6397,
        7713
      ],
      "op": "POP",
      "path": "45"
    },
    "5533": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "o",
      "offset": [
        6397,
        7713
      ],
      "op": "JUMP",
      "path": "45"
    },
    "5534": {
      "offset": [
        373,
        403
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "5535": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x43"
    },
    "5537": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "SLOAD",
      "path": "17"
    },
    "5538": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5540": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5542": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "5544": {
      "op": "SHL"
    },
    "5545": {
      "op": "SUB"
    },
    "5546": {
      "offset": [
        373,
        403
      ],
      "op": "AND",
      "path": "17"
    },
    "5547": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "offset": [
        373,
        403
      ],
      "op": "DUP2",
      "path": "17"
    },
    "5548": {
      "fn": "UniswapV2SpellV1.addLiquidityWStakingRewards",
      "jump": "o",
      "offset": [
        373,
        403
      ],
      "op": "JUMP",
      "path": "17"
    },
    "5549": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1234,
        1444
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "5550": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1297,
        1312
      ],
      "op": "PUSH1",
      "path": "17",
      "statement": 42,
      "value": "0x43"
    },
    "5552": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1297,
        1312
      ],
      "op": "SLOAD",
      "path": "17"
    },
    "5553": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5555": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5557": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "5559": {
      "op": "SHL"
    },
    "5560": {
      "op": "SUB"
    },
    "5561": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1297,
        1312
      ],
      "op": "AND",
      "path": "17"
    },
    "5562": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1283,
        1293
      ],
      "op": "CALLER",
      "path": "17"
    },
    "5563": {
      "branch": 193,
      "fn": "Governable.acceptGovernor",
      "offset": [
        1283,
        1312
      ],
      "op": "EQ",
      "path": "17"
    },
    "5564": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1275,
        1341
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x15D7"
    },
    "5567": {
      "branch": 193,
      "fn": "Governable.acceptGovernor",
      "offset": [
        1275,
        1341
      ],
      "op": "JUMPI",
      "path": "17"
    },
    "5568": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1275,
        1341
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x40"
    },
    "5570": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1275,
        1341
      ],
      "op": "MLOAD",
      "path": "17"
    },
    "5571": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "5575": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "5577": {
      "op": "SHL"
    },
    "5578": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1275,
        1341
      ],
      "op": "DUP2",
      "path": "17"
    },
    "5579": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1275,
        1341
      ],
      "op": "MSTORE",
      "path": "17"
    },
    "5580": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1275,
        1341
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x4"
    },
    "5582": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1275,
        1341
      ],
      "op": "ADD",
      "path": "17"
    },
    "5583": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1275,
        1341
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x186"
    },
    "5586": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1275,
        1341
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "5587": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1275,
        1341
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x3E51"
    },
    "5590": {
      "fn": "Governable.acceptGovernor",
      "jump": "i",
      "offset": [
        1275,
        1341
      ],
      "op": "JUMP",
      "path": "17"
    },
    "5591": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1275,
        1341
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "5592": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1347,
        1362
      ],
      "op": "PUSH1",
      "path": "17",
      "statement": 43,
      "value": "0x43"
    },
    "5594": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1347,
        1375
      ],
      "op": "DUP1",
      "path": "17"
    },
    "5595": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1347,
        1375
      ],
      "op": "SLOAD",
      "path": "17"
    },
    "5596": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5598": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5600": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "5602": {
      "op": "SHL"
    },
    "5603": {
      "op": "SUB"
    },
    "5604": {
      "op": "NOT"
    },
    "5605": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1347,
        1375
      ],
      "op": "AND",
      "path": "17"
    },
    "5606": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1347,
        1375
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "5607": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1347,
        1375
      ],
      "op": "SSTORE",
      "path": "17"
    },
    "5608": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1389
      ],
      "op": "PUSH1",
      "path": "17",
      "statement": 44,
      "value": "0x42"
    },
    "5610": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "DUP1",
      "path": "17"
    },
    "5611": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "SLOAD",
      "path": "17"
    },
    "5612": {
      "op": "PUSH3",
      "value": "0x10000"
    },
    "5616": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5618": {
      "op": "PUSH1",
      "value": "0xB0"
    },
    "5620": {
      "op": "SHL"
    },
    "5621": {
      "op": "SUB"
    },
    "5622": {
      "op": "NOT"
    },
    "5623": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "AND",
      "path": "17"
    },
    "5624": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1392,
        1402
      ],
      "op": "CALLER",
      "path": "17"
    },
    "5625": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "PUSH3",
      "path": "17",
      "value": "0x10000"
    },
    "5629": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "DUP2",
      "path": "17"
    },
    "5630": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "MUL",
      "path": "17"
    },
    "5631": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "SWAP2",
      "path": "17"
    },
    "5632": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "5633": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "SWAP2",
      "path": "17"
    },
    "5634": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "OR",
      "path": "17"
    },
    "5635": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "5636": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "SWAP2",
      "path": "17"
    },
    "5637": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1381,
        1402
      ],
      "op": "SSTORE",
      "path": "17"
    },
    "5638": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "PUSH1",
      "path": "17",
      "statement": 45,
      "value": "0x40"
    },
    "5640": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "MLOAD",
      "path": "17"
    },
    "5641": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "PUSH32",
      "path": "17",
      "value": "0xD345D81CE68C70B119A17EEE79DC1421700BD9CB21CA148A62DC90983964E82F"
    },
    "5674": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "SWAP2",
      "path": "17"
    },
    "5675": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x1633"
    },
    "5678": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "SWAP2",
      "path": "17"
    },
    "5679": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x3C81"
    },
    "5682": {
      "fn": "Governable.acceptGovernor",
      "jump": "i",
      "offset": [
        1413,
        1439
      ],
      "op": "JUMP",
      "path": "17"
    },
    "5683": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "5684": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x40"
    },
    "5686": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "MLOAD",
      "path": "17"
    },
    "5687": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "DUP1",
      "path": "17"
    },
    "5688": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "SWAP2",
      "path": "17"
    },
    "5689": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "SUB",
      "path": "17"
    },
    "5690": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "5691": {
      "fn": "Governable.acceptGovernor",
      "offset": [
        1413,
        1439
      ],
      "op": "LOG1",
      "path": "17"
    },
    "5692": {
      "fn": "Governable.acceptGovernor",
      "jump": "o",
      "offset": [
        1234,
        1444
      ],
      "op": "JUMP",
      "path": "17"
    },
    "5693": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "5694": {
      "offset": [
        566,
        574
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x42"
    },
    "5696": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        566,
        574
      ],
      "op": "SLOAD",
      "path": "17"
    },
    "5697": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        566,
        574
      ],
      "op": "PUSH3",
      "path": "17",
      "value": "0x10000"
    },
    "5701": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        566,
        574
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "5702": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        566,
        574
      ],
      "op": "DIV",
      "path": "17"
    },
    "5703": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5705": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5707": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "5709": {
      "op": "SHL"
    },
    "5710": {
      "op": "SUB"
    },
    "5711": {
      "offset": [
        566,
        574
      ],
      "op": "AND",
      "path": "17"
    },
    "5712": {
      "offset": [
        552,
        562
      ],
      "op": "CALLER",
      "path": "17"
    },
    "5713": {
      "offset": [
        552,
        574
      ],
      "op": "EQ",
      "path": "17"
    },
    "5714": {
      "offset": [
        544,
        595
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x166D"
    },
    "5717": {
      "offset": [
        544,
        595
      ],
      "op": "JUMPI",
      "path": "17"
    },
    "5718": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        544,
        595
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x40"
    },
    "5720": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        544,
        595
      ],
      "op": "MLOAD",
      "path": "17"
    },
    "5721": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "5725": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "5727": {
      "op": "SHL"
    },
    "5728": {
      "offset": [
        544,
        595
      ],
      "op": "DUP2",
      "path": "17"
    },
    "5729": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        544,
        595
      ],
      "op": "MSTORE",
      "path": "17"
    },
    "5730": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        544,
        595
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x4"
    },
    "5732": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        544,
        595
      ],
      "op": "ADD",
      "path": "17"
    },
    "5733": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        544,
        595
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x186"
    },
    "5736": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        544,
        595
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "5737": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        544,
        595
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x3FAA"
    },
    "5740": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "jump": "i",
      "offset": [
        544,
        595
      ],
      "op": "JUMP",
      "path": "17"
    },
    "5741": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        544,
        595
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "5742": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        696,
        730
      ],
      "op": "DUP3",
      "path": "46",
      "statement": 46
    },
    "5743": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        696,
        730
      ],
      "op": "DUP2",
      "path": "46"
    },
    "5744": {
      "branch": 210,
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        696,
        730
      ],
      "op": "EQ",
      "path": "46"
    },
    "5745": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        688,
        772
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x168C"
    },
    "5748": {
      "branch": 210,
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        688,
        772
      ],
      "op": "JUMPI",
      "path": "46"
    },
    "5749": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        688,
        772
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x40"
    },
    "5751": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        688,
        772
      ],
      "op": "MLOAD",
      "path": "46"
    },
    "5752": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "5756": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "5758": {
      "op": "SHL"
    },
    "5759": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        688,
        772
      ],
      "op": "DUP2",
      "path": "46"
    },
    "5760": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        688,
        772
      ],
      "op": "MSTORE",
      "path": "46"
    },
    "5761": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        688,
        772
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x4"
    },
    "5763": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        688,
        772
      ],
      "op": "ADD",
      "path": "46"
    },
    "5764": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        688,
        772
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x186"
    },
    "5767": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        688,
        772
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "5768": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        688,
        772
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x3FD4"
    },
    "5771": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "jump": "i",
      "offset": [
        688,
        772
      ],
      "op": "JUMP",
      "path": "46"
    },
    "5772": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        688,
        772
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "5773": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        783,
        791
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x0"
    },
    "5775": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        778,
        1004
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "5776": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        797,
        818
      ],
      "op": "DUP4",
      "path": "46"
    },
    "5777": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        797,
        818
      ],
      "op": "DUP2",
      "path": "46"
    },
    "5778": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        797,
        818
      ],
      "op": "LT",
      "path": "46"
    },
    "5779": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        778,
        1004
      ],
      "op": "ISZERO",
      "path": "46"
    },
    "5780": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        778,
        1004
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x180B"
    },
    "5783": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        778,
        1004
      ],
      "op": "JUMPI",
      "path": "46"
    },
    "5784": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        847
      ],
      "op": "DUP3",
      "path": "46"
    },
    "5785": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        847
      ],
      "op": "DUP3",
      "path": "46"
    },
    "5786": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        848,
        851
      ],
      "op": "DUP3",
      "path": "46"
    },
    "5787": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "DUP2",
      "path": "46"
    },
    "5788": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "DUP2",
      "path": "46"
    },
    "5789": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "LT",
      "path": "46"
    },
    "5790": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x16A3"
    },
    "5793": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "JUMPI",
      "path": "46"
    },
    "5794": {
      "dev": "Index out of range",
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "INVALID",
      "path": "46"
    },
    "5795": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "5796": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "5797": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "POP",
      "path": "46"
    },
    "5798": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x20"
    },
    "5800": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "MUL",
      "path": "46"
    },
    "5801": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "ADD",
      "path": "46"
    },
    "5802": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x20"
    },
    "5804": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "DUP2",
      "path": "46"
    },
    "5805": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "ADD",
      "path": "46"
    },
    "5806": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "5807": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x16B8"
    },
    "5810": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "SWAP2",
      "path": "46"
    },
    "5811": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "5812": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x3B06"
    },
    "5815": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "jump": "i",
      "offset": [
        839,
        852
      ],
      "op": "JUMP",
      "path": "46"
    },
    "5816": {
      "branch": 211,
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        839,
        852
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "5817": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        835,
        940
      ],
      "op": "ISZERO",
      "path": "46"
    },
    "5818": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        835,
        940
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x1795"
    },
    "5821": {
      "branch": 211,
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        835,
        940
      ],
      "op": "JUMPI",
      "path": "46"
    },
    "5822": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        876
      ],
      "op": "PUSH32",
      "path": "46",
      "statement": 47,
      "value": "0x0"
    },
    "5855": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5857": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "5859": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "5861": {
      "op": "SHL"
    },
    "5862": {
      "op": "SUB"
    },
    "5863": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        884
      ],
      "op": "AND",
      "path": "46"
    },
    "5864": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        884
      ],
      "op": "PUSH4",
      "path": "46",
      "value": "0xE660CC08"
    },
    "5869": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        893
      ],
      "op": "DUP7",
      "path": "46"
    },
    "5870": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        893
      ],
      "op": "DUP7",
      "path": "46"
    },
    "5871": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        894,
        897
      ],
      "op": "DUP5",
      "path": "46"
    },
    "5872": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "DUP2",
      "path": "46"
    },
    "5873": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "DUP2",
      "path": "46"
    },
    "5874": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "LT",
      "path": "46"
    },
    "5875": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x16F8"
    },
    "5878": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "JUMPI",
      "path": "46"
    },
    "5879": {
      "dev": "Index out of range",
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "INVALID",
      "path": "46"
    },
    "5880": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "5881": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "5882": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "POP",
      "path": "46"
    },
    "5883": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x20"
    },
    "5885": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "MUL",
      "path": "46"
    },
    "5886": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "ADD",
      "path": "46"
    },
    "5887": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x20"
    },
    "5889": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "DUP2",
      "path": "46"
    },
    "5890": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "ADD",
      "path": "46"
    },
    "5891": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "5892": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x170D"
    },
    "5895": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "SWAP2",
      "path": "46"
    },
    "5896": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "5897": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x36E8"
    },
    "5900": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "jump": "i",
      "offset": [
        885,
        898
      ],
      "op": "JUMP",
      "path": "46"
    },
    "5901": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        885,
        898
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "5902": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x40"
    },
    "5904": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "MLOAD",
      "path": "46"
    },
    "5905": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP3",
      "path": "46"
    },
    "5906": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH4",
      "path": "46",
      "value": "0xFFFFFFFF"
    },
    "5911": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "AND",
      "path": "46"
    },
    "5912": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0xE0"
    },
    "5914": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "SHL",
      "path": "46"
    },
    "5915": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP2",
      "path": "46"
    },
    "5916": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "MSTORE",
      "path": "46"
    },
    "5917": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x4"
    },
    "5919": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "ADD",
      "path": "46"
    },
    "5920": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x1729"
    },
    "5923": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "SWAP2",
      "path": "46"
    },
    "5924": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "5925": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x3C81"
    },
    "5928": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "jump": "i",
      "offset": [
        872,
        899
      ],
      "op": "JUMP",
      "path": "46"
    },
    "5929": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "5930": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x20"
    },
    "5932": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x40"
    },
    "5934": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "MLOAD",
      "path": "46"
    },
    "5935": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP1",
      "path": "46"
    },
    "5936": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP4",
      "path": "46"
    },
    "5937": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "SUB",
      "path": "46"
    },
    "5938": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP2",
      "path": "46"
    },
    "5939": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP7",
      "path": "46"
    },
    "5940": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP1",
      "path": "46"
    },
    "5941": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "EXTCODESIZE",
      "path": "46"
    },
    "5942": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "ISZERO",
      "path": "46"
    },
    "5943": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP1",
      "path": "46"
    },
    "5944": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "ISZERO",
      "path": "46"
    },
    "5945": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x1741"
    },
    "5948": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "JUMPI",
      "path": "46"
    },
    "5949": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x0"
    },
    "5951": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP1",
      "path": "46"
    },
    "5952": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "REVERT",
      "path": "46"
    },
    "5953": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "5954": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "POP",
      "path": "46"
    },
    "5955": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "GAS",
      "path": "46"
    },
    "5956": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "STATICCALL",
      "path": "46"
    },
    "5957": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "ISZERO",
      "path": "46"
    },
    "5958": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP1",
      "path": "46"
    },
    "5959": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "ISZERO",
      "path": "46"
    },
    "5960": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x1755"
    },
    "5963": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "JUMPI",
      "path": "46"
    },
    "5964": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "RETURNDATASIZE",
      "path": "46"
    },
    "5965": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x0"
    },
    "5967": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP1",
      "path": "46"
    },
    "5968": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "RETURNDATACOPY",
      "path": "46"
    },
    "5969": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "RETURNDATASIZE",
      "path": "46"
    },
    "5970": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x0"
    },
    "5972": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "REVERT",
      "path": "46"
    },
    "5973": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "5974": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "POP",
      "path": "46"
    },
    "5975": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "POP",
      "path": "46"
    },
    "5976": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "POP",
      "path": "46"
    },
    "5977": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "POP",
      "path": "46"
    },
    "5978": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x40"
    },
    "5980": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "MLOAD",
      "path": "46"
    },
    "5981": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "RETURNDATASIZE",
      "path": "46"
    },
    "5982": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x1F"
    },
    "5984": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "NOT",
      "path": "46"
    },
    "5985": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x1F"
    },
    "5987": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP3",
      "path": "46"
    },
    "5988": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "ADD",
      "path": "46"
    },
    "5989": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "AND",
      "path": "46"
    },
    "5990": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP3",
      "path": "46"
    },
    "5991": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "ADD",
      "path": "46"
    },
    "5992": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP1",
      "path": "46"
    },
    "5993": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x40"
    },
    "5995": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "MSTORE",
      "path": "46"
    },
    "5996": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "POP",
      "path": "46"
    },
    "5997": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "DUP2",
      "path": "46"
    },
    "5998": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "ADD",
      "path": "46"
    },
    "5999": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "6000": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x1779"
    },
    "6003": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "SWAP2",
      "path": "46"
    },
    "6004": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "6005": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x3B22"
    },
    "6008": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "jump": "i",
      "offset": [
        872,
        899
      ],
      "op": "JUMP",
      "path": "46"
    },
    "6009": {
      "branch": 212,
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        872,
        899
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "6010": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        864,
        931
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x1795"
    },
    "6013": {
      "branch": 212,
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        864,
        931
      ],
      "op": "JUMPI",
      "path": "46"
    },
    "6014": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        864,
        931
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x40"
    },
    "6016": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        864,
        931
      ],
      "op": "MLOAD",
      "path": "46"
    },
    "6017": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "6021": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "6023": {
      "op": "SHL"
    },
    "6024": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        864,
        931
      ],
      "op": "DUP2",
      "path": "46"
    },
    "6025": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        864,
        931
      ],
      "op": "MSTORE",
      "path": "46"
    },
    "6026": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        864,
        931
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x4"
    },
    "6028": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        864,
        931
      ],
      "op": "ADD",
      "path": "46"
    },
    "6029": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        864,
        931
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x186"
    },
    "6032": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        864,
        931
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "6033": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        864,
        931
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x3EBF"
    },
    "6036": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "jump": "i",
      "offset": [
        864,
        931
      ],
      "op": "JUMP",
      "path": "46"
    },
    "6037": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        864,
        931
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "6038": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        992
      ],
      "op": "DUP3",
      "path": "46",
      "statement": 48
    },
    "6039": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        992
      ],
      "op": "DUP3",
      "path": "46"
    },
    "6040": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        993,
        996
      ],
      "op": "DUP3",
      "path": "46"
    },
    "6041": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "DUP2",
      "path": "46"
    },
    "6042": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "DUP2",
      "path": "46"
    },
    "6043": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "LT",
      "path": "46"
    },
    "6044": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x17A1"
    },
    "6047": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "JUMPI",
      "path": "46"
    },
    "6048": {
      "dev": "Index out of range",
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "INVALID",
      "path": "46"
    },
    "6049": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "6050": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "6051": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "POP",
      "path": "46"
    },
    "6052": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x20"
    },
    "6054": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "MUL",
      "path": "46"
    },
    "6055": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "ADD",
      "path": "46"
    },
    "6056": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x20"
    },
    "6058": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "DUP2",
      "path": "46"
    },
    "6059": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "ADD",
      "path": "46"
    },
    "6060": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "6061": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x17B6"
    },
    "6064": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "SWAP2",
      "path": "46"
    },
    "6065": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "6066": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x3B06"
    },
    "6069": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "jump": "i",
      "offset": [
        984,
        997
      ],
      "op": "JUMP",
      "path": "46"
    },
    "6070": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        984,
        997
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "6071": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        966
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x84"
    },
    "6073": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x0"
    },
    "6075": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        975
      ],
      "op": "DUP8",
      "path": "46"
    },
    "6076": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        975
      ],
      "op": "DUP8",
      "path": "46"
    },
    "6077": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        976,
        979
      ],
      "op": "DUP6",
      "path": "46"
    },
    "6078": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "DUP2",
      "path": "46"
    },
    "6079": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "DUP2",
      "path": "46"
    },
    "6080": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "LT",
      "path": "46"
    },
    "6081": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x17C6"
    },
    "6084": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "JUMPI",
      "path": "46"
    },
    "6085": {
      "dev": "Index out of range",
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "INVALID",
      "path": "46"
    },
    "6086": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "6087": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "6088": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "POP",
      "path": "46"
    },
    "6089": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x20"
    },
    "6091": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "MUL",
      "path": "46"
    },
    "6092": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "ADD",
      "path": "46"
    },
    "6093": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x20"
    },
    "6095": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "DUP2",
      "path": "46"
    },
    "6096": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "ADD",
      "path": "46"
    },
    "6097": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "6098": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x17DB"
    },
    "6101": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "SWAP2",
      "path": "46"
    },
    "6102": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "6103": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x36E8"
    },
    "6106": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "jump": "i",
      "offset": [
        967,
        980
      ],
      "op": "JUMP",
      "path": "46"
    },
    "6107": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        967,
        980
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "6108": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6110": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6112": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "6114": {
      "op": "SHL"
    },
    "6115": {
      "op": "SUB"
    },
    "6116": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "AND",
      "path": "46"
    },
    "6117": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "DUP2",
      "path": "46"
    },
    "6118": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "MSTORE",
      "path": "46"
    },
    "6119": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x20"
    },
    "6121": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "DUP2",
      "path": "46"
    },
    "6122": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "ADD",
      "path": "46"
    },
    "6123": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "SWAP2",
      "path": "46"
    },
    "6124": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "6125": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "SWAP2",
      "path": "46"
    },
    "6126": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "MSTORE",
      "path": "46"
    },
    "6127": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "PUSH1",
      "path": "46",
      "value": "0x40"
    },
    "6129": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "ADD",
      "path": "46"
    },
    "6130": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6132": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        981
      ],
      "op": "KECCAK256",
      "path": "46"
    },
    "6133": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        997
      ],
      "op": "DUP1",
      "path": "46"
    },
    "6134": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        997
      ],
      "op": "SLOAD",
      "path": "46"
    },
    "6135": {
      "op": "PUSH1",
      "value": "0xFF"
    },
    "6137": {
      "op": "NOT"
    },
    "6138": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        997
      ],
      "op": "AND",
      "path": "46"
    },
    "6139": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        997
      ],
      "op": "SWAP2",
      "path": "46"
    },
    "6140": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        997
      ],
      "op": "ISZERO",
      "path": "46"
    },
    "6141": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        997
      ],
      "op": "ISZERO",
      "path": "46"
    },
    "6142": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        997
      ],
      "op": "SWAP2",
      "path": "46"
    },
    "6143": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        997
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "6144": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        997
      ],
      "op": "SWAP2",
      "path": "46"
    },
    "6145": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        997
      ],
      "op": "OR",
      "path": "46"
    },
    "6146": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        997
      ],
      "op": "SWAP1",
      "path": "46"
    },
    "6147": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        947,
        997
      ],
      "op": "SSTORE",
      "path": "46"
    },
    "6148": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6150": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        820,
        825
      ],
      "op": "ADD",
      "path": "46",
      "statement": 49
    },
    "6151": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        778,
        1004
      ],
      "op": "PUSH2",
      "path": "46",
      "value": "0x168F"
    },
    "6154": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        778,
        1004
      ],
      "op": "JUMP",
      "path": "46"
    },
    "6155": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        778,
        1004
      ],
      "op": "JUMPDEST",
      "path": "46"
    },
    "6156": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        778,
        1004
      ],
      "op": "POP",
      "path": "46"
    },
    "6157": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "POP",
      "path": "46"
    },
    "6158": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "POP",
      "path": "46"
    },
    "6159": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "POP",
      "path": "46"
    },
    "6160": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "offset": [
        570,
        1008
      ],
      "op": "POP",
      "path": "46"
    },
    "6161": {
      "fn": "WhitelistSpell.setWhitelistLPTokens",
      "jump": "o",
      "offset": [
        570,
        1008
      ],
      "op": "JUMP",
      "path": "46"
    },
    "6162": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "6163": {
      "offset": [
        566,
        574
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x42"
    },
    "6165": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        566,
        574
      ],
      "op": "SLOAD",
      "path": "17"
    },
    "6166": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        566,
        574
      ],
      "op": "PUSH3",
      "path": "17",
      "value": "0x10000"
    },
    "6170": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        566,
        574
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "6171": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        566,
        574
      ],
      "op": "DIV",
      "path": "17"
    },
    "6172": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6174": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6176": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "6178": {
      "op": "SHL"
    },
    "6179": {
      "op": "SUB"
    },
    "6180": {
      "offset": [
        566,
        574
      ],
      "op": "AND",
      "path": "17"
    },
    "6181": {
      "offset": [
        552,
        562
      ],
      "op": "CALLER",
      "path": "17"
    },
    "6182": {
      "offset": [
        552,
        574
      ],
      "op": "EQ",
      "path": "17"
    },
    "6183": {
      "offset": [
        544,
        595
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x1842"
    },
    "6186": {
      "offset": [
        544,
        595
      ],
      "op": "JUMPI",
      "path": "17"
    },
    "6187": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        544,
        595
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x40"
    },
    "6189": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        544,
        595
      ],
      "op": "MLOAD",
      "path": "17"
    },
    "6190": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "6194": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "6196": {
      "op": "SHL"
    },
    "6197": {
      "offset": [
        544,
        595
      ],
      "op": "DUP2",
      "path": "17"
    },
    "6198": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        544,
        595
      ],
      "op": "MSTORE",
      "path": "17"
    },
    "6199": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        544,
        595
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x4"
    },
    "6201": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        544,
        595
      ],
      "op": "ADD",
      "path": "17"
    },
    "6202": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        544,
        595
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x186"
    },
    "6205": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        544,
        595
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "6206": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        544,
        595
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x3FAA"
    },
    "6209": {
      "fn": "Governable.setPendingGovernor",
      "jump": "i",
      "offset": [
        544,
        595
      ],
      "op": "JUMP",
      "path": "17"
    },
    "6210": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        544,
        595
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "6211": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1058,
        1073
      ],
      "op": "PUSH1",
      "path": "17",
      "statement": 50,
      "value": "0x43"
    },
    "6213": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1058,
        1092
      ],
      "op": "DUP1",
      "path": "17"
    },
    "6214": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1058,
        1092
      ],
      "op": "SLOAD",
      "path": "17"
    },
    "6215": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6217": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6219": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "6221": {
      "op": "SHL"
    },
    "6222": {
      "op": "SUB"
    },
    "6223": {
      "op": "NOT"
    },
    "6224": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1058,
        1092
      ],
      "op": "AND",
      "path": "17"
    },
    "6225": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6227": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6229": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "6231": {
      "op": "SHL"
    },
    "6232": {
      "op": "SUB"
    },
    "6233": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1058,
        1092
      ],
      "op": "DUP4",
      "path": "17"
    },
    "6234": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1058,
        1092
      ],
      "op": "AND",
      "path": "17"
    },
    "6235": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1058,
        1092
      ],
      "op": "OR",
      "path": "17"
    },
    "6236": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1058,
        1092
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "6237": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1058,
        1092
      ],
      "op": "SSTORE",
      "path": "17"
    },
    "6238": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "PUSH1",
      "path": "17",
      "statement": 51,
      "value": "0x40"
    },
    "6240": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "MLOAD",
      "path": "17"
    },
    "6241": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "PUSH32",
      "path": "17",
      "value": "0x964DEA888B00B2AB53F13DFE7CA334B46E99338C222AE232D98547A1DA019F60"
    },
    "6274": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "6275": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x188D"
    },
    "6278": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "6279": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1058,
        1092
      ],
      "op": "DUP4",
      "path": "17"
    },
    "6280": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1058,
        1092
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "6281": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "PUSH2",
      "path": "17",
      "value": "0x3C81"
    },
    "6284": {
      "fn": "Governable.setPendingGovernor",
      "jump": "i",
      "offset": [
        1103,
        1139
      ],
      "op": "JUMP",
      "path": "17"
    },
    "6285": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "JUMPDEST",
      "path": "17"
    },
    "6286": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "PUSH1",
      "path": "17",
      "value": "0x40"
    },
    "6288": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "MLOAD",
      "path": "17"
    },
    "6289": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "DUP1",
      "path": "17"
    },
    "6290": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "SWAP2",
      "path": "17"
    },
    "6291": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "SUB",
      "path": "17"
    },
    "6292": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "SWAP1",
      "path": "17"
    },
    "6293": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        1103,
        1139
      ],
      "op": "LOG1",
      "path": "17"
    },
    "6294": {
      "fn": "Governable.setPendingGovernor",
      "offset": [
        981,
        1144
      ],
      "op": "POP",
      "path": "17"
    },
    "6295": {
      "fn": "Governable.setPendingGovernor",
      "jump": "o",
      "offset": [
        981,
        1144
      ],
      "op": "JUMP",
      "path": "17"
    },
    "6296": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "JUMPDEST",
      "path": "50"
    },
    "6297": {
      "op": "PUSH4",
      "value": "0xF23A6E61"
    },
    "6302": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "6304": {
      "op": "SHL"
    },
    "6305": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "SWAP7",
      "path": "50"
    },
    "6306": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "SWAP6",
      "path": "50"
    },
    "6307": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "POP",
      "path": "50"
    },
    "6308": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "POP",
      "path": "50"
    },
    "6309": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "POP",
      "path": "50"
    },
    "6310": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "POP",
      "path": "50"
    },
    "6311": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "POP",
      "path": "50"
    },
    "6312": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        259,
        498
      ],
      "op": "POP",
      "path": "50"
    },
    "6313": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "jump": "o",
      "offset": [
        259,
        498
      ],
      "op": "JUMP",
      "path": "50"
    },
    "6314": {
      "offset": [
        578,
        638
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "6315": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x41"
    },
    "6317": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x20"
    },
    "6319": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "6320": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "DUP2",
      "path": "41"
    },
    "6321": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "6322": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "6324": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "SWAP3",
      "path": "41"
    },
    "6325": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "DUP4",
      "path": "41"
    },
    "6326": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "6327": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "6329": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6330": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "DUP5",
      "path": "41"
    },
    "6331": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "KECCAK256",
      "path": "41"
    },
    "6332": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "6333": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "6334": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "6335": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "6336": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "DUP3",
      "path": "41"
    },
    "6337": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "6338": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "6339": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "KECCAK256",
      "path": "41"
    },
    "6340": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "SLOAD",
      "path": "41"
    },
    "6341": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0xFF"
    },
    "6343": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "AND",
      "path": "41"
    },
    "6344": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        578,
        638
      ],
      "op": "DUP2",
      "path": "41"
    },
    "6345": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "jump": "o",
      "offset": [
        578,
        638
      ],
      "op": "JUMP",
      "path": "41"
    },
    "6346": {
      "offset": [
        687,
        729
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "6347": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "6380": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "offset": [
        687,
        729
      ],
      "op": "DUP2",
      "path": "45"
    },
    "6381": {
      "fn": "ERC1155NaiveReceiver.onERC1155Received",
      "jump": "o",
      "offset": [
        687,
        729
      ],
      "op": "JUMP",
      "path": "45"
    },
    "6382": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1348,
        1961
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "6383": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1713,
        1723
      ],
      "op": "DUP1",
      "path": "13",
      "statement": 52
    },
    "6384": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1713,
        1723
      ],
      "op": "ISZERO",
      "path": "13"
    },
    "6385": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1713,
        1723
      ],
      "op": "DUP1",
      "path": "13"
    },
    "6386": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1712,
        1774
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x1976"
    },
    "6389": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1712,
        1774
      ],
      "op": "JUMPI",
      "path": "13"
    },
    "6390": {
      "op": "POP"
    },
    "6391": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x40"
    },
    "6393": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "MLOAD",
      "path": "13"
    },
    "6394": {
      "op": "PUSH4",
      "value": "0x6EB1769F"
    },
    "6399": {
      "op": "PUSH1",
      "value": "0xE1"
    },
    "6401": {
      "op": "SHL"
    },
    "6402": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP2",
      "path": "13"
    },
    "6403": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "MSTORE",
      "path": "13"
    },
    "6404": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6406": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6408": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "6410": {
      "op": "SHL"
    },
    "6411": {
      "op": "SUB"
    },
    "6412": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1744
      ],
      "op": "DUP5",
      "path": "13"
    },
    "6413": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1744
      ],
      "op": "AND",
      "path": "13"
    },
    "6414": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1744
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6415": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1744
      ],
      "op": "PUSH4",
      "path": "13",
      "value": "0xDD62ED3E"
    },
    "6420": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1744
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6421": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x1924"
    },
    "6424": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6425": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1753,
        1757
      ],
      "op": "ADDRESS",
      "path": "13"
    },
    "6426": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1753,
        1757
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6427": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1760,
        1767
      ],
      "op": "DUP7",
      "path": "13"
    },
    "6428": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1760,
        1767
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6429": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x4"
    },
    "6431": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "ADD",
      "path": "13"
    },
    "6432": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x3C95"
    },
    "6435": {
      "fn": "SafeERC20.safeApprove",
      "jump": "i",
      "offset": [
        1729,
        1768
      ],
      "op": "JUMP",
      "path": "13"
    },
    "6436": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "6437": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x20"
    },
    "6439": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x40"
    },
    "6441": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "MLOAD",
      "path": "13"
    },
    "6442": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP1",
      "path": "13"
    },
    "6443": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP4",
      "path": "13"
    },
    "6444": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "SUB",
      "path": "13"
    },
    "6445": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP2",
      "path": "13"
    },
    "6446": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP7",
      "path": "13"
    },
    "6447": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP1",
      "path": "13"
    },
    "6448": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "EXTCODESIZE",
      "path": "13"
    },
    "6449": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "ISZERO",
      "path": "13"
    },
    "6450": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP1",
      "path": "13"
    },
    "6451": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "ISZERO",
      "path": "13"
    },
    "6452": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x193C"
    },
    "6455": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "JUMPI",
      "path": "13"
    },
    "6456": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x0"
    },
    "6458": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP1",
      "path": "13"
    },
    "6459": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "REVERT",
      "path": "13"
    },
    "6460": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "6461": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "POP",
      "path": "13"
    },
    "6462": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "GAS",
      "path": "13"
    },
    "6463": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "STATICCALL",
      "path": "13"
    },
    "6464": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "ISZERO",
      "path": "13"
    },
    "6465": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP1",
      "path": "13"
    },
    "6466": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "ISZERO",
      "path": "13"
    },
    "6467": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x1950"
    },
    "6470": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "JUMPI",
      "path": "13"
    },
    "6471": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "RETURNDATASIZE",
      "path": "13"
    },
    "6472": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x0"
    },
    "6474": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP1",
      "path": "13"
    },
    "6475": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "RETURNDATACOPY",
      "path": "13"
    },
    "6476": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "RETURNDATASIZE",
      "path": "13"
    },
    "6477": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x0"
    },
    "6479": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "REVERT",
      "path": "13"
    },
    "6480": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "6481": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "POP",
      "path": "13"
    },
    "6482": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "POP",
      "path": "13"
    },
    "6483": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "POP",
      "path": "13"
    },
    "6484": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "POP",
      "path": "13"
    },
    "6485": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x40"
    },
    "6487": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "MLOAD",
      "path": "13"
    },
    "6488": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "RETURNDATASIZE",
      "path": "13"
    },
    "6489": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x1F"
    },
    "6491": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "NOT",
      "path": "13"
    },
    "6492": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x1F"
    },
    "6494": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP3",
      "path": "13"
    },
    "6495": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "ADD",
      "path": "13"
    },
    "6496": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "AND",
      "path": "13"
    },
    "6497": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP3",
      "path": "13"
    },
    "6498": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "ADD",
      "path": "13"
    },
    "6499": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP1",
      "path": "13"
    },
    "6500": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x40"
    },
    "6502": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "MSTORE",
      "path": "13"
    },
    "6503": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "POP",
      "path": "13"
    },
    "6504": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "DUP2",
      "path": "13"
    },
    "6505": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "ADD",
      "path": "13"
    },
    "6506": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6507": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x1974"
    },
    "6510": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "SWAP2",
      "path": "13"
    },
    "6511": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6512": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x3BBA"
    },
    "6515": {
      "fn": "SafeERC20.safeApprove",
      "jump": "i",
      "offset": [
        1729,
        1768
      ],
      "op": "JUMP",
      "path": "13"
    },
    "6516": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1768
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "6517": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1729,
        1773
      ],
      "op": "ISZERO",
      "path": "13"
    },
    "6518": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1712,
        1774
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "6519": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1704,
        1854
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x1992"
    },
    "6522": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1704,
        1854
      ],
      "op": "JUMPI",
      "path": "13"
    },
    "6523": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1704,
        1854
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x40"
    },
    "6525": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1704,
        1854
      ],
      "op": "MLOAD",
      "path": "13"
    },
    "6526": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "6530": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "6532": {
      "op": "SHL"
    },
    "6533": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1704,
        1854
      ],
      "op": "DUP2",
      "path": "13"
    },
    "6534": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1704,
        1854
      ],
      "op": "MSTORE",
      "path": "13"
    },
    "6535": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1704,
        1854
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x4"
    },
    "6537": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1704,
        1854
      ],
      "op": "ADD",
      "path": "13"
    },
    "6538": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1704,
        1854
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x186"
    },
    "6541": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1704,
        1854
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6542": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1704,
        1854
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x41BE"
    },
    "6545": {
      "fn": "SafeERC20.safeApprove",
      "jump": "i",
      "offset": [
        1704,
        1854
      ],
      "op": "JUMP",
      "path": "13"
    },
    "6546": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1704,
        1854
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "6547": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1864,
        1954
      ],
      "op": "PUSH2",
      "path": "13",
      "statement": 53,
      "value": "0x19E8"
    },
    "6550": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1884,
        1889
      ],
      "op": "DUP4",
      "path": "13"
    },
    "6551": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1914,
        1936
      ],
      "op": "PUSH4",
      "path": "13",
      "value": "0x95EA7B3"
    },
    "6556": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1914,
        1936
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0xE0"
    },
    "6558": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1914,
        1936
      ],
      "op": "SHL",
      "path": "13"
    },
    "6559": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1938,
        1945
      ],
      "op": "DUP5",
      "path": "13"
    },
    "6560": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1947,
        1952
      ],
      "op": "DUP5",
      "path": "13"
    },
    "6561": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x40"
    },
    "6563": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "MLOAD",
      "path": "13"
    },
    "6564": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x24"
    },
    "6566": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "ADD",
      "path": "13"
    },
    "6567": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x19B1"
    },
    "6570": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SWAP3",
      "path": "13"
    },
    "6571": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SWAP2",
      "path": "13"
    },
    "6572": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6573": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x3D53"
    },
    "6576": {
      "fn": "SafeERC20.safeApprove",
      "jump": "i",
      "offset": [
        1891,
        1953
      ],
      "op": "JUMP",
      "path": "13"
    },
    "6577": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "6578": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x40"
    },
    "6580": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "DUP1",
      "path": "13"
    },
    "6581": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "MLOAD",
      "path": "13"
    },
    "6582": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "6584": {
      "op": "NOT"
    },
    "6585": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "DUP2",
      "path": "13"
    },
    "6586": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "DUP5",
      "path": "13"
    },
    "6587": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SUB",
      "path": "13"
    },
    "6588": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "ADD",
      "path": "13"
    },
    "6589": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "DUP2",
      "path": "13"
    },
    "6590": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "MSTORE",
      "path": "13"
    },
    "6591": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SWAP2",
      "path": "13"
    },
    "6592": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6593": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "MSTORE",
      "path": "13"
    },
    "6594": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x20"
    },
    "6596": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "DUP2",
      "path": "13"
    },
    "6597": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "ADD",
      "path": "13"
    },
    "6598": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "DUP1",
      "path": "13"
    },
    "6599": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "MLOAD",
      "path": "13"
    },
    "6600": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6602": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6604": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "6606": {
      "op": "SHL"
    },
    "6607": {
      "op": "SUB"
    },
    "6608": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "AND",
      "path": "13"
    },
    "6609": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6611": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6613": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "6615": {
      "op": "SHL"
    },
    "6616": {
      "op": "SUB"
    },
    "6617": {
      "op": "NOT"
    },
    "6618": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6619": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SWAP4",
      "path": "13"
    },
    "6620": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "AND",
      "path": "13"
    },
    "6621": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SWAP3",
      "path": "13"
    },
    "6622": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6623": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SWAP3",
      "path": "13"
    },
    "6624": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "OR",
      "path": "13"
    },
    "6625": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "6626": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "SWAP2",
      "path": "13"
    },
    "6627": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1891,
        1953
      ],
      "op": "MSTORE",
      "path": "13"
    },
    "6628": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1864,
        1883
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x2FA9"
    },
    "6631": {
      "fn": "SafeERC20.safeApprove",
      "jump": "i",
      "offset": [
        1864,
        1954
      ],
      "op": "JUMP",
      "path": "13"
    },
    "6632": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1864,
        1954
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "6633": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1348,
        1961
      ],
      "op": "POP",
      "path": "13"
    },
    "6634": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1348,
        1961
      ],
      "op": "POP",
      "path": "13"
    },
    "6635": {
      "fn": "SafeERC20.safeApprove",
      "offset": [
        1348,
        1961
      ],
      "op": "POP",
      "path": "13"
    },
    "6636": {
      "fn": "SafeERC20.safeApprove",
      "jump": "o",
      "offset": [
        1348,
        1961
      ],
      "op": "JUMP",
      "path": "13"
    },
    "6637": {
      "fn": "Address.isContract",
      "offset": [
        726,
        1139
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "6638": {
      "fn": "Address.isContract",
      "offset": [
        1086,
        1106
      ],
      "op": "EXTCODESIZE",
      "path": "14"
    },
    "6639": {
      "fn": "Address.isContract",
      "offset": [
        1124,
        1132
      ],
      "op": "ISZERO",
      "path": "14",
      "statement": 54
    },
    "6640": {
      "fn": "Address.isContract",
      "offset": [
        1124,
        1132
      ],
      "op": "ISZERO",
      "path": "14"
    },
    "6641": {
      "fn": "Address.isContract",
      "offset": [
        1124,
        1132
      ],
      "op": "SWAP1",
      "path": "14"
    },
    "6642": {
      "fn": "Address.isContract",
      "jump": "o",
      "offset": [
        726,
        1139
      ],
      "op": "JUMP",
      "path": "14"
    },
    "6643": {
      "fn": "Address.functionCall",
      "offset": [
        3581,
        3774
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "6644": {
      "fn": "Address.functionCall",
      "offset": [
        3684,
        3696
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x60"
    },
    "6646": {
      "fn": "Address.functionCall",
      "offset": [
        3715,
        3767
      ],
      "op": "PUSH2",
      "path": "14",
      "statement": 55,
      "value": "0x1A02"
    },
    "6649": {
      "fn": "Address.functionCall",
      "offset": [
        3737,
        3743
      ],
      "op": "DUP5",
      "path": "14"
    },
    "6650": {
      "fn": "Address.functionCall",
      "offset": [
        3745,
        3749
      ],
      "op": "DUP5",
      "path": "14"
    },
    "6651": {
      "fn": "Address.functionCall",
      "offset": [
        3751,
        3752
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x0"
    },
    "6653": {
      "fn": "Address.functionCall",
      "offset": [
        3754,
        3766
      ],
      "op": "DUP6",
      "path": "14"
    },
    "6654": {
      "fn": "Address.functionCall",
      "offset": [
        3715,
        3736
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x3038"
    },
    "6657": {
      "fn": "Address.functionCall",
      "jump": "i",
      "offset": [
        3715,
        3767
      ],
      "op": "JUMP",
      "path": "14"
    },
    "6658": {
      "fn": "Address.functionCall",
      "offset": [
        3715,
        3767
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "6659": {
      "fn": "Address.functionCall",
      "offset": [
        3708,
        3767
      ],
      "op": "SWAP1",
      "path": "14"
    },
    "6660": {
      "fn": "Address.functionCall",
      "offset": [
        3708,
        3767
      ],
      "op": "POP",
      "path": "14"
    },
    "6661": {
      "fn": "Address.functionCall",
      "offset": [
        3581,
        3774
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "6662": {
      "fn": "Address.functionCall",
      "offset": [
        3581,
        3774
      ],
      "op": "SWAP4",
      "path": "14"
    },
    "6663": {
      "fn": "Address.functionCall",
      "offset": [
        3581,
        3774
      ],
      "op": "SWAP3",
      "path": "14"
    },
    "6664": {
      "fn": "Address.functionCall",
      "offset": [
        3581,
        3774
      ],
      "op": "POP",
      "path": "14"
    },
    "6665": {
      "fn": "Address.functionCall",
      "offset": [
        3581,
        3774
      ],
      "op": "POP",
      "path": "14"
    },
    "6666": {
      "fn": "Address.functionCall",
      "offset": [
        3581,
        3774
      ],
      "op": "POP",
      "path": "14"
    },
    "6667": {
      "fn": "Address.functionCall",
      "jump": "o",
      "offset": [
        3581,
        3774
      ],
      "op": "JUMP",
      "path": "14"
    },
    "6668": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4031,
        4322
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "6669": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4104,
        4114
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6670": {
      "branch": 182,
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4104,
        4114
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "6671": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4100,
        4318
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BD8"
    },
    "6674": {
      "branch": 182,
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4100,
        4318
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "6675": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "6677": {
      "op": "NOT"
    },
    "6678": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4128,
        4134
      ],
      "op": "DUP2",
      "path": "41"
    },
    "6679": {
      "branch": 183,
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4128,
        4146
      ],
      "op": "EQ",
      "path": "41"
    },
    "6680": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4124,
        4213
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "6681": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4124,
        4213
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1AB3"
    },
    "6684": {
      "branch": 183,
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4124,
        4213
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "6685": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4179
      ],
      "op": "PUSH32",
      "path": "41",
      "statement": 56,
      "value": "0x0"
    },
    "6718": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6720": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6722": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "6724": {
      "op": "SHL"
    },
    "6725": {
      "op": "SUB"
    },
    "6726": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4202
      ],
      "op": "AND",
      "path": "41"
    },
    "6727": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4202
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0xF70AEDD9"
    },
    "6732": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "6734": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "6735": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP2",
      "path": "41"
    },
    "6736": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0xFFFFFFFF"
    },
    "6741": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "AND",
      "path": "41"
    },
    "6742": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0xE0"
    },
    "6744": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "SHL",
      "path": "41"
    },
    "6745": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP2",
      "path": "41"
    },
    "6746": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "6747": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "6749": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "ADD",
      "path": "41"
    },
    "6750": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x80"
    },
    "6752": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "6754": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "6755": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6756": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP4",
      "path": "41"
    },
    "6757": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "SUB",
      "path": "41"
    },
    "6758": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP2",
      "path": "41"
    },
    "6759": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP7",
      "path": "41"
    },
    "6760": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6761": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "EXTCODESIZE",
      "path": "41"
    },
    "6762": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "6763": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6764": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "6765": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1A75"
    },
    "6768": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "6769": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "6771": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6772": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "REVERT",
      "path": "41"
    },
    "6773": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "6774": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "POP",
      "path": "41"
    },
    "6775": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "GAS",
      "path": "41"
    },
    "6776": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "STATICCALL",
      "path": "41"
    },
    "6777": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "6778": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6779": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "6780": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1A89"
    },
    "6783": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "6784": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "6785": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "6787": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6788": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "RETURNDATACOPY",
      "path": "41"
    },
    "6789": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "6790": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "6792": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "REVERT",
      "path": "41"
    },
    "6793": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "6794": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "POP",
      "path": "41"
    },
    "6795": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "POP",
      "path": "41"
    },
    "6796": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "POP",
      "path": "41"
    },
    "6797": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "POP",
      "path": "41"
    },
    "6798": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "6800": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "6801": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "6802": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x1F"
    },
    "6804": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "NOT",
      "path": "41"
    },
    "6805": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x1F"
    },
    "6807": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP3",
      "path": "41"
    },
    "6808": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "ADD",
      "path": "41"
    },
    "6809": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "AND",
      "path": "41"
    },
    "6810": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP3",
      "path": "41"
    },
    "6811": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "ADD",
      "path": "41"
    },
    "6812": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6813": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "6815": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "6816": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "POP",
      "path": "41"
    },
    "6817": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "DUP2",
      "path": "41"
    },
    "6818": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "ADD",
      "path": "41"
    },
    "6819": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "6820": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1AAD"
    },
    "6823": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "6824": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "6825": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3947"
    },
    "6828": {
      "fn": "BasicSpell.doTakeCollateral",
      "jump": "i",
      "offset": [
        4175,
        4204
      ],
      "op": "JUMP",
      "path": "41"
    },
    "6829": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4175,
        4204
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "6830": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4158,
        4204
      ],
      "op": "SWAP4",
      "path": "41"
    },
    "6831": {
      "op": "POP"
    },
    "6832": {
      "op": "POP"
    },
    "6833": {
      "op": "POP"
    },
    "6834": {
      "op": "POP"
    },
    "6835": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4124,
        4213
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "6836": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "PUSH1",
      "path": "41",
      "statement": 57,
      "value": "0x40"
    },
    "6838": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "6839": {
      "op": "PUSH4",
      "value": "0xD1D6975"
    },
    "6844": {
      "op": "PUSH1",
      "value": "0xE3"
    },
    "6846": {
      "op": "SHL"
    },
    "6847": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "DUP2",
      "path": "41"
    },
    "6848": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "6849": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6851": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "6853": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "6855": {
      "op": "SHL"
    },
    "6856": {
      "op": "SUB"
    },
    "6857": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4224
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "6890": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4239
      ],
      "op": "DUP2",
      "path": "41"
    },
    "6891": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4239
      ],
      "op": "AND",
      "path": "41"
    },
    "6892": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4239
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "6893": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4239
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0x68EB4BA8"
    },
    "6898": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4239
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "6899": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1B25"
    },
    "6902": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "6903": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4248,
        4254
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "6936": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4248,
        4254
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "6937": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4257,
        4268
      ],
      "op": "DUP8",
      "path": "41"
    },
    "6938": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4257,
        4268
      ],
      "op": "AND",
      "path": "41"
    },
    "6939": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4257,
        4268
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "6940": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4270,
        4276
      ],
      "op": "DUP7",
      "path": "41"
    },
    "6941": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4270,
        4276
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "6942": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "6944": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "ADD",
      "path": "41"
    },
    "6945": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3D6C"
    },
    "6948": {
      "fn": "BasicSpell.doTakeCollateral",
      "jump": "i",
      "offset": [
        4220,
        4277
      ],
      "op": "JUMP",
      "path": "41"
    },
    "6949": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "6950": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "6952": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "6954": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "6955": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6956": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "DUP4",
      "path": "41"
    },
    "6957": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "SUB",
      "path": "41"
    },
    "6958": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "DUP2",
      "path": "41"
    },
    "6959": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "6961": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "DUP8",
      "path": "41"
    },
    "6962": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6963": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "EXTCODESIZE",
      "path": "41"
    },
    "6964": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "6965": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6966": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "6967": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1B3F"
    },
    "6970": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "6971": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "6973": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6974": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "REVERT",
      "path": "41"
    },
    "6975": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "6976": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "POP",
      "path": "41"
    },
    "6977": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "GAS",
      "path": "41"
    },
    "6978": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "CALL",
      "path": "41"
    },
    "6979": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "6980": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6981": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "6982": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1B53"
    },
    "6985": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "6986": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "6987": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "6989": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "DUP1",
      "path": "41"
    },
    "6990": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "RETURNDATACOPY",
      "path": "41"
    },
    "6991": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "6992": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "6994": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "REVERT",
      "path": "41"
    },
    "6995": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4220,
        4277
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "6996": {
      "op": "POP"
    },
    "6997": {
      "op": "POP"
    },
    "6998": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "PUSH1",
      "path": "41",
      "statement": 58,
      "value": "0x40"
    },
    "7000": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "7001": {
      "op": "PUSH4",
      "value": "0x2770A7EB"
    },
    "7006": {
      "op": "PUSH1",
      "value": "0xE2"
    },
    "7008": {
      "op": "SHL"
    },
    "7009": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "DUP2",
      "path": "41"
    },
    "7010": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "7011": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7013": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7015": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "7017": {
      "op": "SHL"
    },
    "7018": {
      "op": "SUB"
    },
    "7019": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4291
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "7052": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4296
      ],
      "op": "AND",
      "path": "41"
    },
    "7053": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4296
      ],
      "op": "SWAP3",
      "path": "41"
    },
    "7054": {
      "op": "POP"
    },
    "7055": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4296
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0x9DC29FAC"
    },
    "7060": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4296
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "7061": {
      "op": "POP"
    },
    "7062": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BA5"
    },
    "7065": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "7066": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4297,
        4302
      ],
      "op": "DUP6",
      "path": "41"
    },
    "7067": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4297,
        4302
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "7068": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4304,
        4310
      ],
      "op": "DUP6",
      "path": "41"
    },
    "7069": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4304,
        4310
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "7070": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "7072": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "ADD",
      "path": "41"
    },
    "7073": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3D53"
    },
    "7076": {
      "fn": "BasicSpell.doTakeCollateral",
      "jump": "i",
      "offset": [
        4285,
        4311
      ],
      "op": "JUMP",
      "path": "41"
    },
    "7077": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "7078": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "7080": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "7082": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "7083": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "DUP1",
      "path": "41"
    },
    "7084": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "DUP4",
      "path": "41"
    },
    "7085": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "SUB",
      "path": "41"
    },
    "7086": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "DUP2",
      "path": "41"
    },
    "7087": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "7089": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "DUP8",
      "path": "41"
    },
    "7090": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "DUP1",
      "path": "41"
    },
    "7091": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "EXTCODESIZE",
      "path": "41"
    },
    "7092": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "7093": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "DUP1",
      "path": "41"
    },
    "7094": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "7095": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BBF"
    },
    "7098": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "7099": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "7101": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "DUP1",
      "path": "41"
    },
    "7102": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "REVERT",
      "path": "41"
    },
    "7103": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "7104": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "POP",
      "path": "41"
    },
    "7105": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "GAS",
      "path": "41"
    },
    "7106": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "CALL",
      "path": "41"
    },
    "7107": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "7108": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "DUP1",
      "path": "41"
    },
    "7109": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "7110": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BD3"
    },
    "7113": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "7114": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "7115": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "7117": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "DUP1",
      "path": "41"
    },
    "7118": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "RETURNDATACOPY",
      "path": "41"
    },
    "7119": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "7120": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "7122": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "REVERT",
      "path": "41"
    },
    "7123": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "7124": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "POP",
      "path": "41"
    },
    "7125": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "POP",
      "path": "41"
    },
    "7126": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "POP",
      "path": "41"
    },
    "7127": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4285,
        4311
      ],
      "op": "POP",
      "path": "41"
    },
    "7128": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4100,
        4318
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "7129": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4031,
        4322
      ],
      "op": "POP",
      "path": "41"
    },
    "7130": {
      "fn": "BasicSpell.doTakeCollateral",
      "offset": [
        4031,
        4322
      ],
      "op": "POP",
      "path": "41"
    },
    "7131": {
      "fn": "BasicSpell.doTakeCollateral",
      "jump": "o",
      "offset": [
        4031,
        4322
      ],
      "op": "JUMP",
      "path": "41"
    },
    "7132": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7133": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7135": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7137": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "7139": {
      "op": "SHL"
    },
    "7140": {
      "op": "SUB"
    },
    "7141": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "DUP2",
      "path": "45",
      "statement": 59
    },
    "7142": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "AND",
      "path": "45"
    },
    "7143": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7145": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7146": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7147": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7148": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8463
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x84"
    },
    "7150": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "7152": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7153": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7155": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7156": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "KECCAK256",
      "path": "45"
    },
    "7157": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "SLOAD",
      "path": "45"
    },
    "7158": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xFF"
    },
    "7160": {
      "branch": 157,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8444,
        8467
      ],
      "op": "AND",
      "path": "45"
    },
    "7161": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8436,
        8496
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1C14"
    },
    "7164": {
      "branch": 157,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8436,
        8496
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7165": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8436,
        8496
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7167": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8436,
        8496
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7168": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "7172": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "7174": {
      "op": "SHL"
    },
    "7175": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8436,
        8496
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7176": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8436,
        8496
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7177": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8436,
        8496
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "7179": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8436,
        8496
      ],
      "op": "ADD",
      "path": "45"
    },
    "7180": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8436,
        8496
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x186"
    },
    "7183": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8436,
        8496
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7184": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8436,
        8496
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x403E"
    },
    "7187": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        8436,
        8496
      ],
      "op": "JUMP",
      "path": "45"
    },
    "7188": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8436,
        8496
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7189": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8502,
        8517
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7191": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8524
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "7224": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7226": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7228": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "7230": {
      "op": "SHL"
    },
    "7231": {
      "op": "SUB"
    },
    "7232": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8536
      ],
      "op": "AND",
      "path": "45"
    },
    "7233": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8536
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xD7AC71FF"
    },
    "7238": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7240": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7241": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7242": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "7247": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "AND",
      "path": "45"
    },
    "7248": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "7250": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "SHL",
      "path": "45"
    },
    "7251": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7252": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7253": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "7255": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "ADD",
      "path": "45"
    },
    "7256": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "7258": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7260": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7261": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7262": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP4",
      "path": "45"
    },
    "7263": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "SUB",
      "path": "45"
    },
    "7264": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7265": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP7",
      "path": "45"
    },
    "7266": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7267": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "7268": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7269": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7270": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7271": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1C6F"
    },
    "7274": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7275": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7277": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7278": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "REVERT",
      "path": "45"
    },
    "7279": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7280": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "POP",
      "path": "45"
    },
    "7281": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "GAS",
      "path": "45"
    },
    "7282": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "7283": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7284": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7285": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7286": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1C83"
    },
    "7289": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7290": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7291": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7293": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7294": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "7295": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7296": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7298": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "REVERT",
      "path": "45"
    },
    "7299": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7300": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "POP",
      "path": "45"
    },
    "7301": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "POP",
      "path": "45"
    },
    "7302": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "POP",
      "path": "45"
    },
    "7303": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "POP",
      "path": "45"
    },
    "7304": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7306": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7307": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7308": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "7310": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "NOT",
      "path": "45"
    },
    "7311": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "7313": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP3",
      "path": "45"
    },
    "7314": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "ADD",
      "path": "45"
    },
    "7315": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "AND",
      "path": "45"
    },
    "7316": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP3",
      "path": "45"
    },
    "7317": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "ADD",
      "path": "45"
    },
    "7318": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7319": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7321": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7322": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "POP",
      "path": "45"
    },
    "7323": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7324": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "ADD",
      "path": "45"
    },
    "7325": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7326": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1CA7"
    },
    "7329": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "7330": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7331": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "7334": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        8520,
        8538
      ],
      "op": "JUMP",
      "path": "45"
    },
    "7335": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8520,
        8538
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7336": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8502,
        8538
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7337": {
      "op": "POP"
    },
    "7338": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8562,
        8575
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7340": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8562,
        8575
      ],
      "op": "DUP4",
      "path": "45"
    },
    "7341": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8562,
        8575
      ],
      "op": "ADD",
      "path": "45"
    },
    "7342": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8562,
        8575
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "7343": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8598,
        8611
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x60"
    },
    "7345": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8598,
        8611
      ],
      "op": "DUP5",
      "path": "45"
    },
    "7346": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8598,
        8611
      ],
      "op": "ADD",
      "path": "45"
    },
    "7347": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8598,
        8611
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "7348": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8635,
        8649
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x80"
    },
    "7350": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8635,
        8649
      ],
      "op": "DUP6",
      "path": "45"
    },
    "7351": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8635,
        8649
      ],
      "op": "ADD",
      "path": "45"
    },
    "7352": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8635,
        8649
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "7353": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "7355": {
      "op": "NOT"
    },
    "7356": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8725,
        8746
      ],
      "op": "DUP4",
      "path": "45"
    },
    "7357": {
      "branch": 158,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8725,
        8746
      ],
      "op": "EQ",
      "path": "45"
    },
    "7358": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8721,
        8820
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7359": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8721,
        8820
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1D65"
    },
    "7362": {
      "branch": 158,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8721,
        8820
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7363": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 60,
      "value": "0x40"
    },
    "7365": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7366": {
      "op": "PUSH4",
      "value": "0x20A8BEE7"
    },
    "7371": {
      "op": "PUSH1",
      "value": "0xE2"
    },
    "7373": {
      "op": "SHL"
    },
    "7374": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7375": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7376": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7378": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7380": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "7382": {
      "op": "SHL"
    },
    "7383": {
      "op": "SUB"
    },
    "7384": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8772
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "7417": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8793
      ],
      "op": "AND",
      "path": "45"
    },
    "7418": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8793
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7419": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8793
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x82A2FB9C"
    },
    "7424": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8793
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7425": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1D10"
    },
    "7428": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7429": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8794,
        8804
      ],
      "op": "DUP8",
      "path": "45"
    },
    "7430": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8794,
        8804
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7431": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8806,
        8812
      ],
      "op": "DUP13",
      "path": "45"
    },
    "7432": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8806,
        8812
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7433": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "7435": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "ADD",
      "path": "45"
    },
    "7436": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x421D"
    },
    "7439": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        8768,
        8813
      ],
      "op": "JUMP",
      "path": "45"
    },
    "7440": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7441": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "7443": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7445": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7446": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7447": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP4",
      "path": "45"
    },
    "7448": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "SUB",
      "path": "45"
    },
    "7449": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7450": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7452": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP8",
      "path": "45"
    },
    "7453": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7454": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "7455": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7456": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7457": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7458": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1D2A"
    },
    "7461": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7462": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7464": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7465": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "REVERT",
      "path": "45"
    },
    "7466": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7467": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "POP",
      "path": "45"
    },
    "7468": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "GAS",
      "path": "45"
    },
    "7469": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "CALL",
      "path": "45"
    },
    "7470": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7471": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7472": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7473": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1D3E"
    },
    "7476": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7477": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7478": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7480": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7481": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "7482": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7483": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7485": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "REVERT",
      "path": "45"
    },
    "7486": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7487": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "POP",
      "path": "45"
    },
    "7488": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "POP",
      "path": "45"
    },
    "7489": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "POP",
      "path": "45"
    },
    "7490": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "POP",
      "path": "45"
    },
    "7491": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7493": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7494": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7495": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "7497": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "NOT",
      "path": "45"
    },
    "7498": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "7500": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP3",
      "path": "45"
    },
    "7501": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "ADD",
      "path": "45"
    },
    "7502": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "AND",
      "path": "45"
    },
    "7503": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP3",
      "path": "45"
    },
    "7504": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "ADD",
      "path": "45"
    },
    "7505": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7506": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7508": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7509": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "POP",
      "path": "45"
    },
    "7510": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7511": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "ADD",
      "path": "45"
    },
    "7512": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7513": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1D62"
    },
    "7516": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "7517": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7518": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "7521": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        8768,
        8813
      ],
      "op": "JUMP",
      "path": "45"
    },
    "7522": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8768,
        8813
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7523": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8756,
        8813
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "7524": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8756,
        8813
      ],
      "op": "POP",
      "path": "45"
    },
    "7525": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8721,
        8820
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7526": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "7528": {
      "op": "NOT"
    },
    "7529": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8829,
        8838
      ],
      "op": "DUP3",
      "path": "45"
    },
    "7530": {
      "branch": 159,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8829,
        8850
      ],
      "op": "EQ",
      "path": "45"
    },
    "7531": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8825,
        8924
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7532": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8825,
        8924
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1E12"
    },
    "7535": {
      "branch": 159,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8825,
        8924
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7536": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 61,
      "value": "0x40"
    },
    "7538": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7539": {
      "op": "PUSH4",
      "value": "0x20A8BEE7"
    },
    "7544": {
      "op": "PUSH1",
      "value": "0xE2"
    },
    "7546": {
      "op": "SHL"
    },
    "7547": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7548": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7549": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7551": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7553": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "7555": {
      "op": "SHL"
    },
    "7556": {
      "op": "SUB"
    },
    "7557": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8876
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "7590": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8897
      ],
      "op": "AND",
      "path": "45"
    },
    "7591": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8897
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7592": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8897
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x82A2FB9C"
    },
    "7597": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8897
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7598": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1DBD"
    },
    "7601": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7602": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8898,
        8908
      ],
      "op": "DUP8",
      "path": "45"
    },
    "7603": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8898,
        8908
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7604": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8910,
        8916
      ],
      "op": "DUP12",
      "path": "45"
    },
    "7605": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8910,
        8916
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7606": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "7608": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "ADD",
      "path": "45"
    },
    "7609": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x421D"
    },
    "7612": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        8872,
        8917
      ],
      "op": "JUMP",
      "path": "45"
    },
    "7613": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7614": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "7616": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7618": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7619": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7620": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP4",
      "path": "45"
    },
    "7621": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "SUB",
      "path": "45"
    },
    "7622": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7623": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7625": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP8",
      "path": "45"
    },
    "7626": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7627": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "7628": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7629": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7630": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7631": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1DD7"
    },
    "7634": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7635": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7637": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7638": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "REVERT",
      "path": "45"
    },
    "7639": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7640": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "POP",
      "path": "45"
    },
    "7641": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "GAS",
      "path": "45"
    },
    "7642": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "CALL",
      "path": "45"
    },
    "7643": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7644": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7645": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7646": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1DEB"
    },
    "7649": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7650": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7651": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7653": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7654": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "7655": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7656": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7658": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "REVERT",
      "path": "45"
    },
    "7659": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7660": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "POP",
      "path": "45"
    },
    "7661": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "POP",
      "path": "45"
    },
    "7662": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "POP",
      "path": "45"
    },
    "7663": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "POP",
      "path": "45"
    },
    "7664": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7666": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7667": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7668": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "7670": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "NOT",
      "path": "45"
    },
    "7671": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "7673": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP3",
      "path": "45"
    },
    "7674": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "ADD",
      "path": "45"
    },
    "7675": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "AND",
      "path": "45"
    },
    "7676": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP3",
      "path": "45"
    },
    "7677": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "ADD",
      "path": "45"
    },
    "7678": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7679": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7681": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7682": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "POP",
      "path": "45"
    },
    "7683": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7684": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "ADD",
      "path": "45"
    },
    "7685": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7686": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1E0F"
    },
    "7689": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "7690": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7691": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "7694": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        8872,
        8917
      ],
      "op": "JUMP",
      "path": "45"
    },
    "7695": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8872,
        8917
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7696": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8860,
        8917
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "7697": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8860,
        8917
      ],
      "op": "POP",
      "path": "45"
    },
    "7698": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8825,
        8924
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7699": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "7701": {
      "op": "NOT"
    },
    "7702": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8933,
        8943
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7703": {
      "branch": 160,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8933,
        8955
      ],
      "op": "EQ",
      "path": "45"
    },
    "7704": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8929,
        9026
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7705": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8929,
        9026
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1EBF"
    },
    "7708": {
      "branch": 160,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8929,
        9026
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7709": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 62,
      "value": "0x40"
    },
    "7711": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7712": {
      "op": "PUSH4",
      "value": "0x20A8BEE7"
    },
    "7717": {
      "op": "PUSH1",
      "value": "0xE2"
    },
    "7719": {
      "op": "SHL"
    },
    "7720": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7721": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7722": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7724": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7726": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "7728": {
      "op": "SHL"
    },
    "7729": {
      "op": "SUB"
    },
    "7730": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        8982
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "7763": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9003
      ],
      "op": "AND",
      "path": "45"
    },
    "7764": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9003
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7765": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9003
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x82A2FB9C"
    },
    "7770": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9003
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7771": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1E6A"
    },
    "7774": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7775": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9004,
        9014
      ],
      "op": "DUP8",
      "path": "45"
    },
    "7776": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9004,
        9014
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7777": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9016,
        9018
      ],
      "op": "DUP10",
      "path": "45"
    },
    "7778": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9016,
        9018
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7779": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "7781": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "ADD",
      "path": "45"
    },
    "7782": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x421D"
    },
    "7785": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        8978,
        9019
      ],
      "op": "JUMP",
      "path": "45"
    },
    "7786": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7787": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "7789": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7791": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7792": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7793": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP4",
      "path": "45"
    },
    "7794": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "SUB",
      "path": "45"
    },
    "7795": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7796": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7798": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP8",
      "path": "45"
    },
    "7799": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7800": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "7801": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7802": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7803": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7804": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1E84"
    },
    "7807": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7808": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7810": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7811": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "REVERT",
      "path": "45"
    },
    "7812": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7813": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "POP",
      "path": "45"
    },
    "7814": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "GAS",
      "path": "45"
    },
    "7815": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "CALL",
      "path": "45"
    },
    "7816": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7817": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7818": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7819": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1E98"
    },
    "7822": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7823": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7824": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7826": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7827": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "7828": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7829": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7831": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "REVERT",
      "path": "45"
    },
    "7832": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7833": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "POP",
      "path": "45"
    },
    "7834": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "POP",
      "path": "45"
    },
    "7835": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "POP",
      "path": "45"
    },
    "7836": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "POP",
      "path": "45"
    },
    "7837": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7839": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7840": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7841": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "7843": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "NOT",
      "path": "45"
    },
    "7844": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "7846": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP3",
      "path": "45"
    },
    "7847": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "ADD",
      "path": "45"
    },
    "7848": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "AND",
      "path": "45"
    },
    "7849": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP3",
      "path": "45"
    },
    "7850": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "ADD",
      "path": "45"
    },
    "7851": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7852": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7854": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7855": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "POP",
      "path": "45"
    },
    "7856": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7857": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "ADD",
      "path": "45"
    },
    "7858": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7859": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1EBC"
    },
    "7862": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "7863": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7864": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "7867": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        8978,
        9019
      ],
      "op": "JUMP",
      "path": "45"
    },
    "7868": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8978,
        9019
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7869": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8965,
        9019
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7870": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8965,
        9019
      ],
      "op": "POP",
      "path": "45"
    },
    "7871": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8929,
        9026
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7872": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9076,
        9094
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7874": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9155
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1F4B"
    },
    "7877": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9137,
        9140
      ],
      "op": "DUP8",
      "path": "45"
    },
    "7878": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9137,
        9154
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "7880": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9137,
        9154
      ],
      "op": "ADD",
      "path": "45"
    },
    "7881": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9137,
        9154
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "7882": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9104,
        9106
      ],
      "op": "DUP8",
      "path": "45"
    },
    "7883": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7885": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "7887": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "7889": {
      "op": "SHL"
    },
    "7890": {
      "op": "SUB"
    },
    "7891": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9117
      ],
      "op": "AND",
      "path": "45"
    },
    "7892": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9117
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x70A08231"
    },
    "7897": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9126,
        9130
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "7898": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7900": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7901": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP3",
      "path": "45"
    },
    "7902": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "7907": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "AND",
      "path": "45"
    },
    "7908": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "7910": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "SHL",
      "path": "45"
    },
    "7911": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7912": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7913": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "7915": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "ADD",
      "path": "45"
    },
    "7916": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1EF5"
    },
    "7919": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "7920": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7921": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C81"
    },
    "7924": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        9097,
        9132
      ],
      "op": "JUMP",
      "path": "45"
    },
    "7925": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7926": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "7928": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7930": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7931": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7932": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP4",
      "path": "45"
    },
    "7933": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "SUB",
      "path": "45"
    },
    "7934": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7935": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP7",
      "path": "45"
    },
    "7936": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7937": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "7938": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7939": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7940": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7941": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1F0D"
    },
    "7944": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7945": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7947": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7948": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "REVERT",
      "path": "45"
    },
    "7949": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7950": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "POP",
      "path": "45"
    },
    "7951": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "GAS",
      "path": "45"
    },
    "7952": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "7953": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7954": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7955": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "7956": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1F21"
    },
    "7959": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "7960": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7961": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7963": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7964": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "7965": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7966": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "7968": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "REVERT",
      "path": "45"
    },
    "7969": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "7970": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "POP",
      "path": "45"
    },
    "7971": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "POP",
      "path": "45"
    },
    "7972": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "POP",
      "path": "45"
    },
    "7973": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "POP",
      "path": "45"
    },
    "7974": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7976": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "7977": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "7978": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "7980": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "NOT",
      "path": "45"
    },
    "7981": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "7983": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP3",
      "path": "45"
    },
    "7984": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "ADD",
      "path": "45"
    },
    "7985": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "AND",
      "path": "45"
    },
    "7986": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP3",
      "path": "45"
    },
    "7987": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "ADD",
      "path": "45"
    },
    "7988": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP1",
      "path": "45"
    },
    "7989": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "7991": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "7992": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "POP",
      "path": "45"
    },
    "7993": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "DUP2",
      "path": "45"
    },
    "7994": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "ADD",
      "path": "45"
    },
    "7995": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "7996": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1F45"
    },
    "7999": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8000": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8001": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "8004": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        9097,
        9132
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8005": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9132
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8006": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9136
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8007": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9136
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x30F9"
    },
    "8010": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        9097,
        9155
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8011": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9097,
        9155
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8012": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9076,
        9155
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8013": {
      "op": "POP"
    },
    "8014": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9189,
        9198
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8016": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9189,
        9198
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8017": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9223,
        9240
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8018": {
      "branch": 161,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9223,
        9240
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8019": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9219,
        9427
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2006"
    },
    "8022": {
      "branch": 161,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9219,
        9427
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8023": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 63,
      "value": "0x40"
    },
    "8025": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8026": {
      "op": "PUSH4",
      "value": "0x5D5155EF"
    },
    "8031": {
      "op": "PUSH1",
      "value": "0xE1"
    },
    "8033": {
      "op": "SHL"
    },
    "8034": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8035": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8036": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "8038": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "8040": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "8042": {
      "op": "SHL"
    },
    "8043": {
      "op": "SUB"
    },
    "8044": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9271
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "8077": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9287
      ],
      "op": "AND",
      "path": "45"
    },
    "8078": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9287
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8079": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9287
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xBAA2ABDE"
    },
    "8084": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9287
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8085": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1FAF"
    },
    "8088": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8089": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9297,
        9303
      ],
      "op": "DUP15",
      "path": "45"
    },
    "8090": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9297,
        9303
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8091": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9313,
        9319
      ],
      "op": "DUP15",
      "path": "45"
    },
    "8092": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9313,
        9319
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8093": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9329,
        9342
      ],
      "op": "DUP9",
      "path": "45"
    },
    "8094": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9329,
        9342
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8095": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9352,
        9353
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8097": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9352,
        9353
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8098": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9352,
        9353
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8099": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9352,
        9353
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8100": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9382,
        9386
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "8101": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9382,
        9386
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8102": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9397,
        9412
      ],
      "op": "TIMESTAMP",
      "path": "45"
    },
    "8103": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9397,
        9412
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8104": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "8106": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "ADD",
      "path": "45"
    },
    "8107": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3CAF"
    },
    "8110": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        9265,
        9420
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8111": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8112": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8114": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8115": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8116": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8117": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8118": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "SUB",
      "path": "45"
    },
    "8119": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8120": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8122": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP8",
      "path": "45"
    },
    "8123": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8124": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "8125": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8126": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8127": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8128": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1FC8"
    },
    "8131": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8132": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8134": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8135": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "REVERT",
      "path": "45"
    },
    "8136": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8137": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "POP",
      "path": "45"
    },
    "8138": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "GAS",
      "path": "45"
    },
    "8139": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "CALL",
      "path": "45"
    },
    "8140": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8141": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8142": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8143": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1FDC"
    },
    "8146": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8147": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8148": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8150": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8151": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "8152": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8153": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8155": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "REVERT",
      "path": "45"
    },
    "8156": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8157": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "POP",
      "path": "45"
    },
    "8158": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "POP",
      "path": "45"
    },
    "8159": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "POP",
      "path": "45"
    },
    "8160": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "POP",
      "path": "45"
    },
    "8161": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8163": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8164": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8165": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "8167": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "NOT",
      "path": "45"
    },
    "8168": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "8170": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8171": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "ADD",
      "path": "45"
    },
    "8172": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "AND",
      "path": "45"
    },
    "8173": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8174": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "ADD",
      "path": "45"
    },
    "8175": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8176": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8178": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8179": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "POP",
      "path": "45"
    },
    "8180": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8181": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "ADD",
      "path": "45"
    },
    "8182": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8183": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2000"
    },
    "8186": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8187": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8188": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BD2"
    },
    "8191": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        9265,
        9420
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8192": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9265,
        9420
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8193": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9250,
        9420
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8194": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9250,
        9420
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "8195": {
      "op": "POP"
    },
    "8196": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9250,
        9420
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8197": {
      "op": "POP"
    },
    "8198": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9219,
        9427
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8199": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9459,
        9475
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8201": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9478,
        9504
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2016"
    },
    "8204": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9478,
        9487
      ],
      "op": "DUP8",
      "path": "45"
    },
    "8205": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9492,
        9503
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xA0"
    },
    "8207": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9492,
        9503
      ],
      "op": "DUP13",
      "path": "45"
    },
    "8208": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9492,
        9503
      ],
      "op": "ADD",
      "path": "45"
    },
    "8209": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9492,
        9503
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "8210": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9478,
        9491
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3121"
    },
    "8213": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        9478,
        9504
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8214": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9478,
        9504
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8215": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9459,
        9504
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8216": {
      "op": "POP"
    },
    "8217": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9510,
        9526
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8219": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9529,
        9555
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2028"
    },
    "8222": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9529,
        9538
      ],
      "op": "DUP8",
      "path": "45"
    },
    "8223": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9543,
        9554
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xC0"
    },
    "8225": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9543,
        9554
      ],
      "op": "DUP14",
      "path": "45"
    },
    "8226": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9543,
        9554
      ],
      "op": "ADD",
      "path": "45"
    },
    "8227": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9543,
        9554
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "8228": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9529,
        9542
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3121"
    },
    "8231": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        9529,
        9555
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8232": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9529,
        9555
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8233": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9510,
        9555
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8234": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9510,
        9555
      ],
      "op": "POP",
      "path": "45"
    },
    "8235": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9573,
        9584
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8236": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9566,
        9570
      ],
      "op": "DUP5",
      "path": "45"
    },
    "8237": {
      "branch": 162,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9566,
        9584
      ],
      "op": "LT",
      "path": "45"
    },
    "8238": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9566,
        9606
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8239": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9566,
        9606
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8240": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9566,
        9606
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2038"
    },
    "8243": {
      "branch": 162,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9566,
        9606
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8244": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9566,
        9606
      ],
      "op": "POP",
      "path": "45"
    },
    "8245": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9595,
        9606
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8246": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9588,
        9592
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8247": {
      "branch": 163,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9588,
        9606
      ],
      "op": "GT",
      "path": "45"
    },
    "8248": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9566,
        9606
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8249": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9562,
        10202
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8250": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9562,
        10202
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2157"
    },
    "8253": {
      "branch": 163,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9562,
        10202
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8254": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8256": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8257": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8258": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9654,
        9655
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x2"
    },
    "8260": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8261": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8262": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8263": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9616,
        9637
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x60"
    },
    "8265": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8266": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8267": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "ADD",
      "path": "45"
    },
    "8268": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "DUP5",
      "path": "45"
    },
    "8269": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8270": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9616,
        9637
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "8271": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "8273": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8274": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "ADD",
      "path": "45"
    },
    "8275": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8276": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8277": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "CALLDATASIZE",
      "path": "45"
    },
    "8278": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8279": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "CALLDATACOPY",
      "path": "45"
    },
    "8280": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "ADD",
      "path": "45"
    },
    "8281": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8282": {
      "op": "POP"
    },
    "8283": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9640,
        9656
      ],
      "op": "POP",
      "path": "45"
    },
    "8284": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9616,
        9656
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8285": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9616,
        9656
      ],
      "op": "POP",
      "path": "45"
    },
    "8286": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9686,
        9692
      ],
      "op": "DUP13",
      "path": "45",
      "statement": 64
    },
    "8287": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9694,
        9700
      ],
      "op": "DUP15",
      "path": "45"
    },
    "8288": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9669
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8289": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9670,
        9671
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8291": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8292": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8293": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8294": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "LT",
      "path": "45"
    },
    "8295": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x206C"
    },
    "8298": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8299": {
      "dev": "Index out of range",
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "INVALID",
      "path": "45"
    },
    "8300": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8301": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "8303": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "MUL",
      "path": "45"
    },
    "8304": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "8306": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "ADD",
      "path": "45"
    },
    "8307": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9665,
        9672
      ],
      "op": "ADD",
      "path": "45"
    },
    "8308": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9678
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8309": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9679,
        9680
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1"
    },
    "8311": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8312": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8313": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8314": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "LT",
      "path": "45"
    },
    "8315": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2080"
    },
    "8318": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8319": {
      "dev": "Index out of range",
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "INVALID",
      "path": "45"
    },
    "8320": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8321": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "8323": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "8325": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "8327": {
      "op": "SHL"
    },
    "8328": {
      "op": "SUB"
    },
    "8329": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9664,
        9701
      ],
      "op": "SWAP4",
      "path": "45"
    },
    "8330": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9664,
        9701
      ],
      "op": "DUP5",
      "path": "45"
    },
    "8331": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9664,
        9701
      ],
      "op": "AND",
      "path": "45"
    },
    "8332": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "8334": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8335": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8336": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "MUL",
      "path": "45"
    },
    "8337": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "8338": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8339": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "8340": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "ADD",
      "path": "45"
    },
    "8341": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9674,
        9681
      ],
      "op": "ADD",
      "path": "45"
    },
    "8342": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9664,
        9701
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8343": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9664,
        9701
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8344": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9664,
        9701
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8345": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9664,
        9701
      ],
      "op": "AND",
      "path": "45"
    },
    "8346": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9664,
        9701
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8347": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9664,
        9701
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8348": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9664,
        9701
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8349": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9715
      ],
      "op": "PUSH32",
      "path": "45",
      "statement": 65,
      "value": "0x0"
    },
    "8382": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9740
      ],
      "op": "AND",
      "path": "45"
    },
    "8383": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9740
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x8803DBEE"
    },
    "8388": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9750,
        9771
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x20CD"
    },
    "8391": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9750,
        9761
      ],
      "op": "DUP6",
      "path": "45"
    },
    "8392": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9766,
        9770
      ],
      "op": "DUP9",
      "path": "45"
    },
    "8393": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9750,
        9765
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x30F9"
    },
    "8396": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        9750,
        9771
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8397": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9750,
        9771
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8398": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9781,
        9802
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x20D7"
    },
    "8401": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9781,
        9785
      ],
      "op": "DUP8",
      "path": "45"
    },
    "8402": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9790,
        9801
      ],
      "op": "DUP7",
      "path": "45"
    },
    "8403": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9781,
        9789
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x30F9"
    },
    "8406": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        9781,
        9802
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8407": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9781,
        9802
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8408": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9812,
        9816
      ],
      "op": "DUP5",
      "path": "45"
    },
    "8409": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9834,
        9838
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "8410": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9849,
        9864
      ],
      "op": "TIMESTAMP",
      "path": "45"
    },
    "8411": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8413": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8414": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP7",
      "path": "45"
    },
    "8415": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "8420": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "AND",
      "path": "45"
    },
    "8421": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "8423": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "SHL",
      "path": "45"
    },
    "8424": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8425": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8426": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "8428": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "ADD",
      "path": "45"
    },
    "8429": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x20FA"
    },
    "8432": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "SWAP6",
      "path": "45"
    },
    "8433": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "SWAP5",
      "path": "45"
    },
    "8434": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "SWAP4",
      "path": "45"
    },
    "8435": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "8436": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8437": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8438": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4234"
    },
    "8441": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        9709,
        9872
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8442": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8443": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8445": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8447": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8448": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8449": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8450": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "SUB",
      "path": "45"
    },
    "8451": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8452": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8454": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP8",
      "path": "45"
    },
    "8455": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8456": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "8457": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8458": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8459": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8460": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2114"
    },
    "8463": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8464": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8466": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8467": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "REVERT",
      "path": "45"
    },
    "8468": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8469": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "POP",
      "path": "45"
    },
    "8470": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "GAS",
      "path": "45"
    },
    "8471": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "CALL",
      "path": "45"
    },
    "8472": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8473": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8474": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8475": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2128"
    },
    "8478": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8479": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8480": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8482": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8483": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "8484": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8485": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8487": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "REVERT",
      "path": "45"
    },
    "8488": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8489": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "POP",
      "path": "45"
    },
    "8490": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "POP",
      "path": "45"
    },
    "8491": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "POP",
      "path": "45"
    },
    "8492": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "POP",
      "path": "45"
    },
    "8493": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8495": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8496": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8497": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8499": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8500": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "8501": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "8503": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8504": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8505": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8506": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "ADD",
      "path": "45"
    },
    "8507": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "8509": {
      "op": "NOT"
    },
    "8510": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "AND",
      "path": "45"
    },
    "8511": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8512": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "ADD",
      "path": "45"
    },
    "8513": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8515": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8516": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2150"
    },
    "8519": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8520": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8521": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8522": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "ADD",
      "path": "45"
    },
    "8523": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8524": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3A71"
    },
    "8527": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        9709,
        9872
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8528": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8529": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9709,
        9872
      ],
      "op": "POP",
      "path": "45"
    },
    "8530": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9562,
        10202
      ],
      "op": "POP",
      "path": "45"
    },
    "8531": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9562,
        10202
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2280"
    },
    "8534": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9562,
        10202
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8535": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9562,
        10202
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8536": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9896,
        9907
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8537": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9889,
        9893
      ],
      "op": "DUP5",
      "path": "45"
    },
    "8538": {
      "branch": 164,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9889,
        9907
      ],
      "op": "GT",
      "path": "45"
    },
    "8539": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9889,
        9929
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8540": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9889,
        9929
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8541": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9889,
        9929
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2165"
    },
    "8544": {
      "branch": 164,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9889,
        9929
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8545": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9889,
        9929
      ],
      "op": "POP",
      "path": "45"
    },
    "8546": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9918,
        9929
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8547": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9911,
        9915
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8548": {
      "branch": 165,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9911,
        9929
      ],
      "op": "LT",
      "path": "45"
    },
    "8549": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9889,
        9929
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8550": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9885,
        10202
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8551": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9885,
        10202
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2280"
    },
    "8554": {
      "branch": 165,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9885,
        10202
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8555": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8557": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8558": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8559": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9977,
        9978
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x2"
    },
    "8561": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8562": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8563": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8564": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9939,
        9960
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x60"
    },
    "8566": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8567": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8568": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "ADD",
      "path": "45"
    },
    "8569": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "DUP5",
      "path": "45"
    },
    "8570": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8571": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9939,
        9960
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "8572": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "8574": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8575": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "ADD",
      "path": "45"
    },
    "8576": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8577": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8578": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "CALLDATASIZE",
      "path": "45"
    },
    "8579": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8580": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "CALLDATACOPY",
      "path": "45"
    },
    "8581": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "ADD",
      "path": "45"
    },
    "8582": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8583": {
      "op": "POP"
    },
    "8584": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9963,
        9979
      ],
      "op": "POP",
      "path": "45"
    },
    "8585": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9939,
        9979
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8586": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9939,
        9979
      ],
      "op": "POP",
      "path": "45"
    },
    "8587": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10009,
        10015
      ],
      "op": "DUP14",
      "path": "45",
      "statement": 66
    },
    "8588": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10017,
        10023
      ],
      "op": "DUP14",
      "path": "45"
    },
    "8589": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9992
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8590": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9993,
        9994
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8592": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8593": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8594": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8595": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "LT",
      "path": "45"
    },
    "8596": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2199"
    },
    "8599": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8600": {
      "dev": "Index out of range",
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "INVALID",
      "path": "45"
    },
    "8601": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8602": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "8604": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "MUL",
      "path": "45"
    },
    "8605": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "8607": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "ADD",
      "path": "45"
    },
    "8608": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9988,
        9995
      ],
      "op": "ADD",
      "path": "45"
    },
    "8609": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10001
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8610": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10002,
        10003
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1"
    },
    "8612": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8613": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8614": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8615": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "LT",
      "path": "45"
    },
    "8616": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x21AD"
    },
    "8619": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8620": {
      "dev": "Index out of range",
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "INVALID",
      "path": "45"
    },
    "8621": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8622": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "8624": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "8626": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "8628": {
      "op": "SHL"
    },
    "8629": {
      "op": "SUB"
    },
    "8630": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9987,
        10024
      ],
      "op": "SWAP4",
      "path": "45"
    },
    "8631": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9987,
        10024
      ],
      "op": "DUP5",
      "path": "45"
    },
    "8632": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9987,
        10024
      ],
      "op": "AND",
      "path": "45"
    },
    "8633": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "8635": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8636": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8637": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "MUL",
      "path": "45"
    },
    "8638": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "8639": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8640": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "8641": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "ADD",
      "path": "45"
    },
    "8642": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9997,
        10004
      ],
      "op": "ADD",
      "path": "45"
    },
    "8643": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9987,
        10024
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8644": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9987,
        10024
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8645": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9987,
        10024
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8646": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9987,
        10024
      ],
      "op": "AND",
      "path": "45"
    },
    "8647": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9987,
        10024
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8648": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9987,
        10024
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8649": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9987,
        10024
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8650": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10038
      ],
      "op": "PUSH32",
      "path": "45",
      "statement": 67,
      "value": "0x0"
    },
    "8683": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10063
      ],
      "op": "AND",
      "path": "45"
    },
    "8684": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10063
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x8803DBEE"
    },
    "8689": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10073,
        10094
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x21FA"
    },
    "8692": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10073,
        10084
      ],
      "op": "DUP5",
      "path": "45"
    },
    "8693": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10089,
        10093
      ],
      "op": "DUP8",
      "path": "45"
    },
    "8694": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10073,
        10088
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x30F9"
    },
    "8697": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10073,
        10094
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8698": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10073,
        10094
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8699": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10104,
        10125
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2204"
    },
    "8702": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10104,
        10108
      ],
      "op": "DUP9",
      "path": "45"
    },
    "8703": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10113,
        10124
      ],
      "op": "DUP8",
      "path": "45"
    },
    "8704": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10104,
        10112
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x30F9"
    },
    "8707": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10104,
        10125
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8708": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10104,
        10125
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8709": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10135,
        10139
      ],
      "op": "DUP5",
      "path": "45"
    },
    "8710": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10157,
        10161
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "8711": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10172,
        10187
      ],
      "op": "TIMESTAMP",
      "path": "45"
    },
    "8712": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8714": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8715": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP7",
      "path": "45"
    },
    "8716": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "8721": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "AND",
      "path": "45"
    },
    "8722": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "8724": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "SHL",
      "path": "45"
    },
    "8725": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8726": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8727": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "8729": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "ADD",
      "path": "45"
    },
    "8730": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2227"
    },
    "8733": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "SWAP6",
      "path": "45"
    },
    "8734": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "SWAP5",
      "path": "45"
    },
    "8735": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "SWAP4",
      "path": "45"
    },
    "8736": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "8737": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8738": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8739": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4234"
    },
    "8742": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10032,
        10195
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8743": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8744": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8746": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8748": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8749": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8750": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8751": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "SUB",
      "path": "45"
    },
    "8752": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8753": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8755": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP8",
      "path": "45"
    },
    "8756": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8757": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "8758": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8759": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8760": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8761": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2241"
    },
    "8764": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8765": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8767": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8768": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "REVERT",
      "path": "45"
    },
    "8769": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8770": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "POP",
      "path": "45"
    },
    "8771": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "GAS",
      "path": "45"
    },
    "8772": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "CALL",
      "path": "45"
    },
    "8773": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8774": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8775": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8776": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2255"
    },
    "8779": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8780": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8781": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8783": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8784": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "8785": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8786": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8788": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "REVERT",
      "path": "45"
    },
    "8789": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8790": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "POP",
      "path": "45"
    },
    "8791": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "POP",
      "path": "45"
    },
    "8792": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "POP",
      "path": "45"
    },
    "8793": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "POP",
      "path": "45"
    },
    "8794": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8796": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8797": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8798": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8800": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8801": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "8802": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "8804": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8805": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8806": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8807": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "ADD",
      "path": "45"
    },
    "8808": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "8810": {
      "op": "NOT"
    },
    "8811": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "AND",
      "path": "45"
    },
    "8812": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8813": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "ADD",
      "path": "45"
    },
    "8814": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8816": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8817": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x227D"
    },
    "8820": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8821": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8822": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8823": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "ADD",
      "path": "45"
    },
    "8824": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8825": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3A71"
    },
    "8828": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10032,
        10195
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8829": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8830": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10032,
        10195
      ],
      "op": "POP",
      "path": "45"
    },
    "8831": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9885,
        10202
      ],
      "op": "POP",
      "path": "45"
    },
    "8832": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        9885,
        10202
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8833": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10224,
        10250
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 68,
      "value": "0x228A"
    },
    "8836": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10232,
        10238
      ],
      "op": "DUP14",
      "path": "45"
    },
    "8837": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10240,
        10249
      ],
      "op": "DUP10",
      "path": "45"
    },
    "8838": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10224,
        10231
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3146"
    },
    "8841": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10224,
        10250
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8842": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10224,
        10250
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8843": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10256,
        10282
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 69,
      "value": "0x2294"
    },
    "8846": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10264,
        10270
      ],
      "op": "DUP13",
      "path": "45"
    },
    "8847": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10272,
        10281
      ],
      "op": "DUP9",
      "path": "45"
    },
    "8848": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10256,
        10263
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3146"
    },
    "8851": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10256,
        10282
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8852": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10256,
        10282
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8853": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10288,
        10311
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 70,
      "value": "0x229E"
    },
    "8856": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10296,
        10298
      ],
      "op": "DUP11",
      "path": "45"
    },
    "8857": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10300,
        10310
      ],
      "op": "DUP8",
      "path": "45"
    },
    "8858": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10288,
        10295
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3146"
    },
    "8861": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10288,
        10311
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8862": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10288,
        10311
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8863": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 71,
      "value": "0x40"
    },
    "8865": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8866": {
      "op": "PUSH4",
      "value": "0x70A08231"
    },
    "8871": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "8873": {
      "op": "SHL"
    },
    "8874": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8875": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8876": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10396,
        10407
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xA0"
    },
    "8878": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10396,
        10407
      ],
      "op": "DUP13",
      "path": "45"
    },
    "8879": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10396,
        10407
      ],
      "op": "ADD",
      "path": "45"
    },
    "8880": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10396,
        10407
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "8881": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10396,
        10407
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8882": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "8884": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "8886": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "8888": {
      "op": "SHL"
    },
    "8889": {
      "op": "SUB"
    },
    "8890": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10377
      ],
      "op": "DUP16",
      "path": "45"
    },
    "8891": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10377
      ],
      "op": "AND",
      "path": "45"
    },
    "8892": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10377
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8893": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10377
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x70A08231"
    },
    "8898": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10377
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8899": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x22D0"
    },
    "8902": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8903": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10386,
        10390
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "8904": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10386,
        10390
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8905": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "8907": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "ADD",
      "path": "45"
    },
    "8908": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C81"
    },
    "8911": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10353,
        10392
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8912": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8913": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "8915": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8917": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8918": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8919": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP4",
      "path": "45"
    },
    "8920": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "SUB",
      "path": "45"
    },
    "8921": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8922": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP7",
      "path": "45"
    },
    "8923": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8924": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "8925": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8926": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8927": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8928": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x22E8"
    },
    "8931": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8932": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8934": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8935": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "REVERT",
      "path": "45"
    },
    "8936": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8937": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "POP",
      "path": "45"
    },
    "8938": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "GAS",
      "path": "45"
    },
    "8939": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "8940": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8941": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8942": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8943": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x22FC"
    },
    "8946": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8947": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8948": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8950": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8951": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "8952": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8953": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "8955": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "REVERT",
      "path": "45"
    },
    "8956": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8957": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "POP",
      "path": "45"
    },
    "8958": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "POP",
      "path": "45"
    },
    "8959": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "POP",
      "path": "45"
    },
    "8960": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "POP",
      "path": "45"
    },
    "8961": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8963": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "8964": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "8965": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "8967": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "NOT",
      "path": "45"
    },
    "8968": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "8970": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8971": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "ADD",
      "path": "45"
    },
    "8972": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "AND",
      "path": "45"
    },
    "8973": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP3",
      "path": "45"
    },
    "8974": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "ADD",
      "path": "45"
    },
    "8975": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP1",
      "path": "45"
    },
    "8976": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "8978": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "8979": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "POP",
      "path": "45"
    },
    "8980": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "DUP2",
      "path": "45"
    },
    "8981": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "ADD",
      "path": "45"
    },
    "8982": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8983": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2320"
    },
    "8986": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "8987": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "8988": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "8991": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10353,
        10392
      ],
      "op": "JUMP",
      "path": "45"
    },
    "8992": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10392
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "8993": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10407
      ],
      "op": "LT",
      "path": "45"
    },
    "8994": {
      "branch": 166,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10353,
        10407
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "8995": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10345,
        10408
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x232B"
    },
    "8998": {
      "branch": 166,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10345,
        10408
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "8999": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10345,
        10408
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9001": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10345,
        10408
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9002": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10345,
        10408
      ],
      "op": "REVERT",
      "path": "45"
    },
    "9003": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10345,
        10408
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9004": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 72,
      "value": "0x40"
    },
    "9006": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "9007": {
      "op": "PUSH4",
      "value": "0x70A08231"
    },
    "9012": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "9014": {
      "op": "SHL"
    },
    "9015": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP2",
      "path": "45"
    },
    "9016": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "9017": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10465,
        10476
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xC0"
    },
    "9019": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10465,
        10476
      ],
      "op": "DUP13",
      "path": "45"
    },
    "9020": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10465,
        10476
      ],
      "op": "ADD",
      "path": "45"
    },
    "9021": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10465,
        10476
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "9022": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10465,
        10476
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9023": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9025": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9027": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "9029": {
      "op": "SHL"
    },
    "9030": {
      "op": "SUB"
    },
    "9031": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10446
      ],
      "op": "DUP15",
      "path": "45"
    },
    "9032": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10446
      ],
      "op": "AND",
      "path": "45"
    },
    "9033": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10446
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9034": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10446
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x70A08231"
    },
    "9039": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10446
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9040": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x235D"
    },
    "9043": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9044": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10455,
        10459
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "9045": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10455,
        10459
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9046": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "9048": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "ADD",
      "path": "45"
    },
    "9049": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C81"
    },
    "9052": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10422,
        10461
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9053": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9054": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "9056": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "9058": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "9059": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9060": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP4",
      "path": "45"
    },
    "9061": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "SUB",
      "path": "45"
    },
    "9062": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP2",
      "path": "45"
    },
    "9063": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP7",
      "path": "45"
    },
    "9064": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9065": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "9066": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9067": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9068": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9069": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2375"
    },
    "9072": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "9073": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9075": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9076": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "REVERT",
      "path": "45"
    },
    "9077": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9078": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "POP",
      "path": "45"
    },
    "9079": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "GAS",
      "path": "45"
    },
    "9080": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "9081": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9082": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9083": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9084": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2389"
    },
    "9087": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "9088": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "9089": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9091": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9092": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "9093": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "9094": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9096": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "REVERT",
      "path": "45"
    },
    "9097": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9098": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "POP",
      "path": "45"
    },
    "9099": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "POP",
      "path": "45"
    },
    "9100": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "POP",
      "path": "45"
    },
    "9101": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "POP",
      "path": "45"
    },
    "9102": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "9104": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "9105": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "9106": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "9108": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "NOT",
      "path": "45"
    },
    "9109": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "9111": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP3",
      "path": "45"
    },
    "9112": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "ADD",
      "path": "45"
    },
    "9113": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "AND",
      "path": "45"
    },
    "9114": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP3",
      "path": "45"
    },
    "9115": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "ADD",
      "path": "45"
    },
    "9116": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9117": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "9119": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "9120": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "POP",
      "path": "45"
    },
    "9121": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "DUP2",
      "path": "45"
    },
    "9122": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "ADD",
      "path": "45"
    },
    "9123": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9124": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x23AD"
    },
    "9127": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "9128": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9129": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "9132": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10422,
        10461
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9133": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10461
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9134": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10476
      ],
      "op": "LT",
      "path": "45"
    },
    "9135": {
      "branch": 167,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10422,
        10476
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9136": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10414,
        10477
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x23B8"
    },
    "9139": {
      "branch": 167,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10414,
        10477
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "9140": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10414,
        10477
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9142": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10414,
        10477
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9143": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10414,
        10477
      ],
      "op": "REVERT",
      "path": "45"
    },
    "9144": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10414,
        10477
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9145": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 73,
      "value": "0x40"
    },
    "9147": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "9148": {
      "op": "PUSH4",
      "value": "0x70A08231"
    },
    "9153": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "9155": {
      "op": "SHL"
    },
    "9156": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP2",
      "path": "45"
    },
    "9157": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "9158": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10530,
        10547
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "9160": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10530,
        10547
      ],
      "op": "DUP13",
      "path": "45"
    },
    "9161": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10530,
        10547
      ],
      "op": "ADD",
      "path": "45"
    },
    "9162": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10530,
        10547
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "9163": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10530,
        10547
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9164": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9166": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9168": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "9170": {
      "op": "SHL"
    },
    "9171": {
      "op": "SUB"
    },
    "9172": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10511
      ],
      "op": "DUP13",
      "path": "45"
    },
    "9173": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10511
      ],
      "op": "AND",
      "path": "45"
    },
    "9174": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10511
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9175": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10511
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x70A08231"
    },
    "9180": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10511
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9181": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x23EA"
    },
    "9184": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9185": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10520,
        10524
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "9186": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10520,
        10524
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9187": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "9189": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "ADD",
      "path": "45"
    },
    "9190": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C81"
    },
    "9193": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10491,
        10526
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9194": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9195": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "9197": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "9199": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "9200": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9201": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP4",
      "path": "45"
    },
    "9202": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "SUB",
      "path": "45"
    },
    "9203": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP2",
      "path": "45"
    },
    "9204": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP7",
      "path": "45"
    },
    "9205": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9206": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "9207": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9208": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9209": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9210": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2402"
    },
    "9213": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "9214": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9216": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9217": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "REVERT",
      "path": "45"
    },
    "9218": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9219": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "POP",
      "path": "45"
    },
    "9220": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "GAS",
      "path": "45"
    },
    "9221": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "9222": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9223": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9224": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9225": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2416"
    },
    "9228": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "9229": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "9230": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9232": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9233": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "9234": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "9235": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9237": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "REVERT",
      "path": "45"
    },
    "9238": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9239": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "POP",
      "path": "45"
    },
    "9240": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "POP",
      "path": "45"
    },
    "9241": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "POP",
      "path": "45"
    },
    "9242": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "POP",
      "path": "45"
    },
    "9243": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "9245": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "9246": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "9247": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "9249": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "NOT",
      "path": "45"
    },
    "9250": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "9252": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP3",
      "path": "45"
    },
    "9253": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "ADD",
      "path": "45"
    },
    "9254": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "AND",
      "path": "45"
    },
    "9255": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP3",
      "path": "45"
    },
    "9256": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "ADD",
      "path": "45"
    },
    "9257": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9258": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "9260": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "9261": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "POP",
      "path": "45"
    },
    "9262": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "DUP2",
      "path": "45"
    },
    "9263": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "ADD",
      "path": "45"
    },
    "9264": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9265": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x243A"
    },
    "9268": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "9269": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9270": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "9273": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10491,
        10526
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9274": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10526
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9275": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10547
      ],
      "op": "LT",
      "path": "45"
    },
    "9276": {
      "branch": 168,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10491,
        10547
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9277": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10483,
        10548
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2445"
    },
    "9280": {
      "branch": 168,
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10483,
        10548
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "9281": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10483,
        10548
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9283": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10483,
        10548
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9284": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10483,
        10548
      ],
      "op": "REVERT",
      "path": "45"
    },
    "9285": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10483,
        10548
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9286": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10581,
        10594
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 74,
      "value": "0x244D"
    },
    "9289": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10581,
        10592
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2D60"
    },
    "9292": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10581,
        10594
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9293": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10581,
        10594
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9294": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10600,
        10616
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 75,
      "value": "0x2456"
    },
    "9297": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10609,
        10615
      ],
      "op": "DUP14",
      "path": "45"
    },
    "9298": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10600,
        10608
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x24EE"
    },
    "9301": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10600,
        10616
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9302": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10600,
        10616
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9303": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10622,
        10638
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 76,
      "value": "0x245F"
    },
    "9306": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10631,
        10637
      ],
      "op": "DUP13",
      "path": "45"
    },
    "9307": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10622,
        10630
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x24EE"
    },
    "9310": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10622,
        10638
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9311": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10622,
        10638
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9312": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10644,
        10656
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 77,
      "value": "0x2468"
    },
    "9315": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10653,
        10655
      ],
      "op": "DUP11",
      "path": "45"
    },
    "9316": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10644,
        10652
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x24EE"
    },
    "9319": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "i",
      "offset": [
        10644,
        10656
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9320": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        10644,
        10656
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9321": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9322": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9323": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9324": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9325": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9326": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9327": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9328": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9329": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9330": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9331": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9332": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9333": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "offset": [
        8297,
        10661
      ],
      "op": "POP",
      "path": "45"
    },
    "9334": {
      "fn": "UniswapV2SpellV1.removeLiquidityInternal",
      "jump": "o",
      "offset": [
        8297,
        10661
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9335": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1230,
        1433
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "9336": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9338": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9340": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "9342": {
      "op": "SHL"
    },
    "9343": {
      "op": "SUB"
    },
    "9344": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9345": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "DUP4",
      "path": "41"
    },
    "9346": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "AND",
      "path": "41"
    },
    "9347": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "9349": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9350": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "DUP2",
      "path": "41"
    },
    "9351": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "9352": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1313
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x41"
    },
    "9354": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x20"
    },
    "9356": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9357": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "DUP2",
      "path": "41"
    },
    "9358": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "9359": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "9361": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9362": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "DUP4",
      "path": "41"
    },
    "9363": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1320
      ],
      "op": "KECCAK256",
      "path": "41"
    },
    "9364": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1329
      ],
      "op": "SWAP4",
      "path": "41"
    },
    "9365": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1329
      ],
      "op": "DUP6",
      "path": "41"
    },
    "9366": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1329
      ],
      "op": "AND",
      "path": "41"
    },
    "9367": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1329
      ],
      "op": "DUP4",
      "path": "41"
    },
    "9368": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1329
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "9369": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1329
      ],
      "op": "SWAP3",
      "path": "41"
    },
    "9370": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1329
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9371": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1329
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "9372": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1329
      ],
      "op": "KECCAK256",
      "path": "41"
    },
    "9373": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1329
      ],
      "op": "SLOAD",
      "path": "41"
    },
    "9374": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1329
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0xFF"
    },
    "9376": {
      "branch": 184,
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1305,
        1329
      ],
      "op": "AND",
      "path": "41"
    },
    "9377": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1300,
        1429
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BD8"
    },
    "9380": {
      "branch": 184,
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1300,
        1429
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "9381": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1339,
        1383
      ],
      "op": "PUSH2",
      "path": "41",
      "statement": 78,
      "value": "0x24BA"
    },
    "9384": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9386": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9388": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "9390": {
      "op": "SHL"
    },
    "9391": {
      "op": "SUB"
    },
    "9392": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1339,
        1364
      ],
      "op": "DUP4",
      "path": "41"
    },
    "9393": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1339,
        1364
      ],
      "op": "AND",
      "path": "41"
    },
    "9394": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1365,
        1372
      ],
      "op": "DUP3",
      "path": "41"
    },
    "9395": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "9397": {
      "op": "NOT"
    },
    "9398": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1339,
        1364
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x18EE"
    },
    "9401": {
      "fn": "BasicSpell.ensureApprove",
      "jump": "i",
      "offset": [
        1339,
        1383
      ],
      "op": "JUMP",
      "path": "41"
    },
    "9402": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1339,
        1383
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "9403": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9405": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9407": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "9409": {
      "op": "SHL"
    },
    "9410": {
      "op": "SUB"
    },
    "9411": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "DUP1",
      "path": "41",
      "statement": 79
    },
    "9412": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "DUP4",
      "path": "41"
    },
    "9413": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "AND",
      "path": "41"
    },
    "9414": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "9416": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9417": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "DUP2",
      "path": "41"
    },
    "9418": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "9419": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1399
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x41"
    },
    "9421": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x20"
    },
    "9423": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9424": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "DUP2",
      "path": "41"
    },
    "9425": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "9426": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "9428": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9429": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "DUP4",
      "path": "41"
    },
    "9430": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1406
      ],
      "op": "KECCAK256",
      "path": "41"
    },
    "9431": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1415
      ],
      "op": "SWAP4",
      "path": "41"
    },
    "9432": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1415
      ],
      "op": "DUP6",
      "path": "41"
    },
    "9433": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1415
      ],
      "op": "AND",
      "path": "41"
    },
    "9434": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1415
      ],
      "op": "DUP4",
      "path": "41"
    },
    "9435": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1415
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "9436": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1415
      ],
      "op": "SWAP3",
      "path": "41"
    },
    "9437": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1415
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9438": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1415
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "9439": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1415
      ],
      "op": "KECCAK256",
      "path": "41"
    },
    "9440": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1422
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9441": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1422
      ],
      "op": "SLOAD",
      "path": "41"
    },
    "9442": {
      "op": "PUSH1",
      "value": "0xFF"
    },
    "9444": {
      "op": "NOT"
    },
    "9445": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1422
      ],
      "op": "AND",
      "path": "41"
    },
    "9446": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1418,
        1422
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x1"
    },
    "9448": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1422
      ],
      "op": "OR",
      "path": "41"
    },
    "9449": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1422
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9450": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1391,
        1422
      ],
      "op": "SSTORE",
      "path": "41"
    },
    "9451": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1230,
        1433
      ],
      "op": "POP",
      "path": "41"
    },
    "9452": {
      "fn": "BasicSpell.ensureApprove",
      "offset": [
        1230,
        1433
      ],
      "op": "POP",
      "path": "41"
    },
    "9453": {
      "fn": "BasicSpell.ensureApprove",
      "jump": "o",
      "offset": [
        1230,
        1433
      ],
      "op": "JUMP",
      "path": "41"
    },
    "9454": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2164,
        2359
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "9455": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "9457": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "9458": {
      "op": "PUSH4",
      "value": "0x70A08231"
    },
    "9463": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "9465": {
      "op": "SHL"
    },
    "9466": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP2",
      "path": "41"
    },
    "9467": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "9468": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2212,
        2224
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "9470": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2212,
        2224
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9471": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9473": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9475": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "9477": {
      "op": "SHL"
    },
    "9478": {
      "op": "SUB"
    },
    "9479": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2250
      ],
      "op": "DUP4",
      "path": "41"
    },
    "9480": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2250
      ],
      "op": "AND",
      "path": "41"
    },
    "9481": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2250
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9482": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2250
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0x70A08231"
    },
    "9487": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2250
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9488": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x251D"
    },
    "9491": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9492": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2259,
        2263
      ],
      "op": "ADDRESS",
      "path": "41"
    },
    "9493": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2259,
        2263
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9494": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "9496": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "ADD",
      "path": "41"
    },
    "9497": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3C81"
    },
    "9500": {
      "fn": "BasicSpell.doRefund",
      "jump": "i",
      "offset": [
        2227,
        2265
      ],
      "op": "JUMP",
      "path": "41"
    },
    "9501": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "9502": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x20"
    },
    "9504": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "9506": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "9507": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9508": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP4",
      "path": "41"
    },
    "9509": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "SUB",
      "path": "41"
    },
    "9510": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP2",
      "path": "41"
    },
    "9511": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP7",
      "path": "41"
    },
    "9512": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9513": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "EXTCODESIZE",
      "path": "41"
    },
    "9514": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "9515": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9516": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "9517": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2535"
    },
    "9520": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "9521": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "9523": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9524": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "REVERT",
      "path": "41"
    },
    "9525": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "9526": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "POP",
      "path": "41"
    },
    "9527": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "GAS",
      "path": "41"
    },
    "9528": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "STATICCALL",
      "path": "41"
    },
    "9529": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "9530": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9531": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "9532": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2549"
    },
    "9535": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "9536": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "9537": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "9539": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9540": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "RETURNDATACOPY",
      "path": "41"
    },
    "9541": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "9542": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "9544": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "REVERT",
      "path": "41"
    },
    "9545": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "9546": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "POP",
      "path": "41"
    },
    "9547": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "POP",
      "path": "41"
    },
    "9548": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "POP",
      "path": "41"
    },
    "9549": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "POP",
      "path": "41"
    },
    "9550": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "9552": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "9553": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "9554": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x1F"
    },
    "9556": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "NOT",
      "path": "41"
    },
    "9557": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x1F"
    },
    "9559": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP3",
      "path": "41"
    },
    "9560": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "ADD",
      "path": "41"
    },
    "9561": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "AND",
      "path": "41"
    },
    "9562": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP3",
      "path": "41"
    },
    "9563": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "ADD",
      "path": "41"
    },
    "9564": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9565": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "9567": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "9568": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "POP",
      "path": "41"
    },
    "9569": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "DUP2",
      "path": "41"
    },
    "9570": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "ADD",
      "path": "41"
    },
    "9571": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9572": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x256D"
    },
    "9575": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "9576": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9577": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3BBA"
    },
    "9580": {
      "fn": "BasicSpell.doRefund",
      "jump": "i",
      "offset": [
        2227,
        2265
      ],
      "op": "JUMP",
      "path": "41"
    },
    "9581": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2227,
        2265
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "9582": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2212,
        2265
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9583": {
      "op": "POP"
    },
    "9584": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2275,
        2286
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9585": {
      "branch": 185,
      "fn": "BasicSpell.doRefund",
      "offset": [
        2275,
        2286
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "9586": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2271,
        2355
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BD8"
    },
    "9589": {
      "branch": 185,
      "fn": "BasicSpell.doRefund",
      "offset": [
        2271,
        2355
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "9590": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2296,
        2348
      ],
      "op": "PUSH2",
      "path": "41",
      "statement": 80,
      "value": "0x1BD8"
    },
    "9593": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2327
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "9626": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9628": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9630": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "9632": {
      "op": "SHL"
    },
    "9633": {
      "op": "SUB"
    },
    "9634": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2336
      ],
      "op": "AND",
      "path": "41"
    },
    "9635": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2336
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0x630DC7CB"
    },
    "9640": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "9642": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "9643": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP2",
      "path": "41"
    },
    "9644": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0xFFFFFFFF"
    },
    "9649": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "AND",
      "path": "41"
    },
    "9650": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0xE0"
    },
    "9652": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "SHL",
      "path": "41"
    },
    "9653": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP2",
      "path": "41"
    },
    "9654": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "9655": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "9657": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "ADD",
      "path": "41"
    },
    "9658": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x20"
    },
    "9660": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "9662": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "9663": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9664": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP4",
      "path": "41"
    },
    "9665": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "SUB",
      "path": "41"
    },
    "9666": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP2",
      "path": "41"
    },
    "9667": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP7",
      "path": "41"
    },
    "9668": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9669": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "EXTCODESIZE",
      "path": "41"
    },
    "9670": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "9671": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9672": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "9673": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x25D1"
    },
    "9676": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "9677": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "9679": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9680": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "REVERT",
      "path": "41"
    },
    "9681": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "9682": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "POP",
      "path": "41"
    },
    "9683": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "GAS",
      "path": "41"
    },
    "9684": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "STATICCALL",
      "path": "41"
    },
    "9685": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "9686": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9687": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "9688": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x25E5"
    },
    "9691": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "9692": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "9693": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "9695": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9696": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "RETURNDATACOPY",
      "path": "41"
    },
    "9697": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "9698": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "9700": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "REVERT",
      "path": "41"
    },
    "9701": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "9702": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "POP",
      "path": "41"
    },
    "9703": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "POP",
      "path": "41"
    },
    "9704": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "POP",
      "path": "41"
    },
    "9705": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "POP",
      "path": "41"
    },
    "9706": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "9708": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "9709": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "9710": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x1F"
    },
    "9712": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "NOT",
      "path": "41"
    },
    "9713": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x1F"
    },
    "9715": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP3",
      "path": "41"
    },
    "9716": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "ADD",
      "path": "41"
    },
    "9717": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "AND",
      "path": "41"
    },
    "9718": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP3",
      "path": "41"
    },
    "9719": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "ADD",
      "path": "41"
    },
    "9720": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP1",
      "path": "41"
    },
    "9721": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "9723": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "9724": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "POP",
      "path": "41"
    },
    "9725": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "DUP2",
      "path": "41"
    },
    "9726": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "ADD",
      "path": "41"
    },
    "9727": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9728": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2609"
    },
    "9731": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "9732": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9733": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3704"
    },
    "9736": {
      "fn": "BasicSpell.doRefund",
      "jump": "i",
      "offset": [
        2323,
        2338
      ],
      "op": "JUMP",
      "path": "41"
    },
    "9737": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2323,
        2338
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "9738": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9740": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9742": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "9744": {
      "op": "SHL"
    },
    "9745": {
      "op": "SUB"
    },
    "9746": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2296,
        2322
      ],
      "op": "DUP5",
      "path": "41"
    },
    "9747": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2296,
        2322
      ],
      "op": "AND",
      "path": "41"
    },
    "9748": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2296,
        2322
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "9749": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2340,
        2347
      ],
      "op": "DUP4",
      "path": "41"
    },
    "9750": {
      "fn": "BasicSpell.doRefund",
      "offset": [
        2296,
        2322
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x31C4"
    },
    "9753": {
      "fn": "BasicSpell.doRefund",
      "jump": "i",
      "offset": [
        2296,
        2348
      ],
      "op": "JUMP",
      "path": "41"
    },
    "9754": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3807,
        5458
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9755": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9757": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9759": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "9761": {
      "op": "SHL"
    },
    "9762": {
      "op": "SUB"
    },
    "9763": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "DUP2",
      "path": "45",
      "statement": 81
    },
    "9764": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "AND",
      "path": "45"
    },
    "9765": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9767": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9768": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "DUP2",
      "path": "45"
    },
    "9769": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "9770": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3965
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x84"
    },
    "9772": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "9774": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "9775": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "9777": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9778": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "KECCAK256",
      "path": "45"
    },
    "9779": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "SLOAD",
      "path": "45"
    },
    "9780": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xFF"
    },
    "9782": {
      "branch": 169,
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3946,
        3969
      ],
      "op": "AND",
      "path": "45"
    },
    "9783": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3938,
        3998
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2652"
    },
    "9786": {
      "branch": 169,
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3938,
        3998
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "9787": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3938,
        3998
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "9789": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3938,
        3998
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "9790": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "9794": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "9796": {
      "op": "SHL"
    },
    "9797": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3938,
        3998
      ],
      "op": "DUP2",
      "path": "45"
    },
    "9798": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3938,
        3998
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "9799": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3938,
        3998
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "9801": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3938,
        3998
      ],
      "op": "ADD",
      "path": "45"
    },
    "9802": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3938,
        3998
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x186"
    },
    "9805": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3938,
        3998
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9806": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3938,
        3998
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x403E"
    },
    "9809": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        3938,
        3998
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9810": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        3938,
        3998
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9811": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4038,
        4053
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 82,
      "value": "0x265A"
    },
    "9814": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4038,
        4051
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x31E3"
    },
    "9817": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4038,
        4053
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9818": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4038,
        4053
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9819": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4059,
        4091
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 83,
      "value": "0x2665"
    },
    "9822": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4070,
        4076
      ],
      "op": "DUP5",
      "path": "45"
    },
    "9823": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4078,
        4090
      ],
      "op": "DUP4",
      "path": "45"
    },
    "9824": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4078,
        4090
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "9825": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4059,
        4069
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x325A"
    },
    "9828": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4059,
        4091
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9829": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4059,
        4091
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9830": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4097,
        4129
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 84,
      "value": "0x2673"
    },
    "9833": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4108,
        4114
      ],
      "op": "DUP4",
      "path": "45"
    },
    "9834": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4116,
        4119
      ],
      "op": "DUP4",
      "path": "45"
    },
    "9835": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4116,
        4128
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "9837": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4116,
        4128
      ],
      "op": "ADD",
      "path": "45"
    },
    "9838": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4116,
        4128
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "9839": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4097,
        4107
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x325A"
    },
    "9842": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4097,
        4129
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9843": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4097,
        4129
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9844": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4135,
        4164
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 85,
      "value": "0x2681"
    },
    "9847": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4146,
        4148
      ],
      "op": "DUP2",
      "path": "45"
    },
    "9848": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4150,
        4153
      ],
      "op": "DUP4",
      "path": "45"
    },
    "9849": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4150,
        4163
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "9851": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4150,
        4163
      ],
      "op": "ADD",
      "path": "45"
    },
    "9852": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4150,
        4163
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "9853": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4135,
        4145
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x325A"
    },
    "9856": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4135,
        4164
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9857": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4135,
        4164
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9858": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4206,
        4238
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 86,
      "value": "0x268F"
    },
    "9861": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4215,
        4221
      ],
      "op": "DUP5",
      "path": "45"
    },
    "9862": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4223,
        4226
      ],
      "op": "DUP4",
      "path": "45"
    },
    "9863": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4223,
        4237
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x60"
    },
    "9865": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4223,
        4237
      ],
      "op": "ADD",
      "path": "45"
    },
    "9866": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4223,
        4237
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "9867": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4206,
        4214
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x32AE"
    },
    "9870": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4206,
        4238
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9871": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4206,
        4238
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9872": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4244,
        4276
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 87,
      "value": "0x269D"
    },
    "9875": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4253,
        4259
      ],
      "op": "DUP4",
      "path": "45"
    },
    "9876": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4261,
        4264
      ],
      "op": "DUP4",
      "path": "45"
    },
    "9877": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4261,
        4275
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x80"
    },
    "9879": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4261,
        4275
      ],
      "op": "ADD",
      "path": "45"
    },
    "9880": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4261,
        4275
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "9881": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4244,
        4252
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x32AE"
    },
    "9884": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4244,
        4276
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9885": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4244,
        4276
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9886": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4282,
        4311
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 88,
      "value": "0x26AB"
    },
    "9889": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4291,
        4293
      ],
      "op": "DUP2",
      "path": "45"
    },
    "9890": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4295,
        4298
      ],
      "op": "DUP4",
      "path": "45"
    },
    "9891": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4295,
        4310
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xA0"
    },
    "9893": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4295,
        4310
      ],
      "op": "ADD",
      "path": "45"
    },
    "9894": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4295,
        4310
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "9895": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4282,
        4290
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x32AE"
    },
    "9898": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4282,
        4311
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9899": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4282,
        4311
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9900": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4358,
        4370
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9902": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4376,
        4391
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9903": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4405,
        4414
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9905": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4424,
        4430
      ],
      "op": "DUP7",
      "path": "45"
    },
    "9906": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9908": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "9910": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "9912": {
      "op": "SHL"
    },
    "9913": {
      "op": "SUB"
    },
    "9914": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4441
      ],
      "op": "AND",
      "path": "45"
    },
    "9915": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4441
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x70A08231"
    },
    "9920": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4450,
        4454
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "9921": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "9923": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "9924": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP3",
      "path": "45"
    },
    "9925": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "9930": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "AND",
      "path": "45"
    },
    "9931": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "9933": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "SHL",
      "path": "45"
    },
    "9934": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP2",
      "path": "45"
    },
    "9935": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "9936": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "9938": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "ADD",
      "path": "45"
    },
    "9939": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x26DC"
    },
    "9942": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "9943": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "9944": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C81"
    },
    "9947": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4417,
        4456
      ],
      "op": "JUMP",
      "path": "45"
    },
    "9948": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9949": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "9951": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "9953": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "9954": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9955": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP4",
      "path": "45"
    },
    "9956": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "SUB",
      "path": "45"
    },
    "9957": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP2",
      "path": "45"
    },
    "9958": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP7",
      "path": "45"
    },
    "9959": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9960": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "9961": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9962": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9963": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9964": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x26F4"
    },
    "9967": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "9968": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9970": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9971": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "REVERT",
      "path": "45"
    },
    "9972": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9973": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "POP",
      "path": "45"
    },
    "9974": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "GAS",
      "path": "45"
    },
    "9975": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "9976": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9977": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9978": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "9979": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2708"
    },
    "9982": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "9983": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "9984": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9986": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP1",
      "path": "45"
    },
    "9987": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "9988": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "9989": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "9991": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "REVERT",
      "path": "45"
    },
    "9992": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "9993": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "POP",
      "path": "45"
    },
    "9994": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "POP",
      "path": "45"
    },
    "9995": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "POP",
      "path": "45"
    },
    "9996": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "POP",
      "path": "45"
    },
    "9997": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "9999": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10000": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10001": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10003": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "NOT",
      "path": "45"
    },
    "10004": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10006": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10007": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "ADD",
      "path": "45"
    },
    "10008": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "AND",
      "path": "45"
    },
    "10009": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10010": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "ADD",
      "path": "45"
    },
    "10011": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10012": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10014": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10015": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "POP",
      "path": "45"
    },
    "10016": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10017": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "ADD",
      "path": "45"
    },
    "10018": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10019": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x272C"
    },
    "10022": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10023": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10024": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "10027": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4417,
        4456
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10028": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4417,
        4456
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10029": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4405,
        4456
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10030": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4405,
        4456
      ],
      "op": "POP",
      "path": "45"
    },
    "10031": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4464,
        4473
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10033": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4483,
        4489
      ],
      "op": "DUP7",
      "path": "45"
    },
    "10034": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10036": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10038": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "10040": {
      "op": "SHL"
    },
    "10041": {
      "op": "SUB"
    },
    "10042": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4500
      ],
      "op": "AND",
      "path": "45"
    },
    "10043": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4500
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x70A08231"
    },
    "10048": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4509,
        4513
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "10049": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10051": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10052": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10053": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "10058": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "AND",
      "path": "45"
    },
    "10059": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "10061": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "SHL",
      "path": "45"
    },
    "10062": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10063": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10064": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "10066": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "ADD",
      "path": "45"
    },
    "10067": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x275C"
    },
    "10070": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10071": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10072": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C81"
    },
    "10075": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4476,
        4515
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10076": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10077": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "10079": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10081": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10082": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10083": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP4",
      "path": "45"
    },
    "10084": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "SUB",
      "path": "45"
    },
    "10085": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10086": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP7",
      "path": "45"
    },
    "10087": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10088": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "10089": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10090": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10091": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10092": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2774"
    },
    "10095": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10096": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10098": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10099": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "REVERT",
      "path": "45"
    },
    "10100": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10101": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "POP",
      "path": "45"
    },
    "10102": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "GAS",
      "path": "45"
    },
    "10103": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "10104": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10105": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10106": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10107": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2788"
    },
    "10110": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10111": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10112": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10114": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10115": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "10116": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10117": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10119": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "REVERT",
      "path": "45"
    },
    "10120": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10121": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "POP",
      "path": "45"
    },
    "10122": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "POP",
      "path": "45"
    },
    "10123": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "POP",
      "path": "45"
    },
    "10124": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "POP",
      "path": "45"
    },
    "10125": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10127": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10128": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10129": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10131": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "NOT",
      "path": "45"
    },
    "10132": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10134": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10135": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "ADD",
      "path": "45"
    },
    "10136": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "AND",
      "path": "45"
    },
    "10137": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10138": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "ADD",
      "path": "45"
    },
    "10139": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10140": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10142": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10143": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "POP",
      "path": "45"
    },
    "10144": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10145": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "ADD",
      "path": "45"
    },
    "10146": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10147": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x27AC"
    },
    "10150": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10151": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10152": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "10155": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4476,
        4515
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10156": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4476,
        4515
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10157": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4464,
        4515
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10158": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4464,
        4515
      ],
      "op": "POP",
      "path": "45"
    },
    "10159": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4523,
        4532
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10161": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4540,
        4549
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10162": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4592,
        4598
      ],
      "op": "DUP10",
      "path": "45"
    },
    "10163": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10165": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10167": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "10169": {
      "op": "SHL"
    },
    "10170": {
      "op": "SUB"
    },
    "10171": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4598
      ],
      "op": "AND",
      "path": "45"
    },
    "10172": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4576,
        4578
      ],
      "op": "DUP8",
      "path": "45"
    },
    "10173": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10175": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10177": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "10179": {
      "op": "SHL"
    },
    "10180": {
      "op": "SUB"
    },
    "10181": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4586
      ],
      "op": "AND",
      "path": "45"
    },
    "10182": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4586
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xDFE1681"
    },
    "10187": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10189": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10190": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10191": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "10196": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "AND",
      "path": "45"
    },
    "10197": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "10199": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "SHL",
      "path": "45"
    },
    "10200": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10201": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10202": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "10204": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "ADD",
      "path": "45"
    },
    "10205": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "10207": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10209": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10210": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10211": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP4",
      "path": "45"
    },
    "10212": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "SUB",
      "path": "45"
    },
    "10213": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10214": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP7",
      "path": "45"
    },
    "10215": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10216": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "10217": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10218": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10219": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10220": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x27F4"
    },
    "10223": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10224": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10226": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10227": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "REVERT",
      "path": "45"
    },
    "10228": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10229": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "POP",
      "path": "45"
    },
    "10230": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "GAS",
      "path": "45"
    },
    "10231": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "10232": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10233": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10234": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10235": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2808"
    },
    "10238": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10239": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10240": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10242": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10243": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "10244": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10245": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10247": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "REVERT",
      "path": "45"
    },
    "10248": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10249": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "POP",
      "path": "45"
    },
    "10250": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "POP",
      "path": "45"
    },
    "10251": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "POP",
      "path": "45"
    },
    "10252": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "POP",
      "path": "45"
    },
    "10253": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10255": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10256": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10257": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10259": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "NOT",
      "path": "45"
    },
    "10260": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10262": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10263": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "ADD",
      "path": "45"
    },
    "10264": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "AND",
      "path": "45"
    },
    "10265": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10266": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "ADD",
      "path": "45"
    },
    "10267": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10268": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10270": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10271": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "POP",
      "path": "45"
    },
    "10272": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10273": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "ADD",
      "path": "45"
    },
    "10274": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10275": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x282C"
    },
    "10278": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10279": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10280": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3704"
    },
    "10283": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4561,
        4588
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10284": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4588
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10285": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10287": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10289": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "10291": {
      "op": "SHL"
    },
    "10292": {
      "op": "SUB"
    },
    "10293": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4598
      ],
      "op": "AND",
      "path": "45"
    },
    "10294": {
      "branch": 170,
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4561,
        4598
      ],
      "op": "EQ",
      "path": "45"
    },
    "10295": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4557,
        4742
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10296": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4557,
        4742
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x28C2"
    },
    "10299": {
      "branch": 170,
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4557,
        4742
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10300": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4642,
        4644
      ],
      "op": "DUP7",
      "path": "45",
      "statement": 89
    },
    "10301": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10303": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10305": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "10307": {
      "op": "SHL"
    },
    "10308": {
      "op": "SUB"
    },
    "10309": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4657
      ],
      "op": "AND",
      "path": "45"
    },
    "10310": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4657
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x902F1AC"
    },
    "10315": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10317": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10318": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10319": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "10324": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "AND",
      "path": "45"
    },
    "10325": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "10327": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "SHL",
      "path": "45"
    },
    "10328": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10329": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10330": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "10332": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "ADD",
      "path": "45"
    },
    "10333": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x60"
    },
    "10335": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10337": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10338": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10339": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP4",
      "path": "45"
    },
    "10340": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "SUB",
      "path": "45"
    },
    "10341": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10342": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP7",
      "path": "45"
    },
    "10343": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10344": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "10345": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10346": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10347": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10348": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2874"
    },
    "10351": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10352": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10354": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10355": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "REVERT",
      "path": "45"
    },
    "10356": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10357": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "POP",
      "path": "45"
    },
    "10358": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "GAS",
      "path": "45"
    },
    "10359": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "10360": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10361": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10362": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10363": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2888"
    },
    "10366": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10367": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10368": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10370": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10371": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "10372": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10373": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10375": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "REVERT",
      "path": "45"
    },
    "10376": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10377": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "POP",
      "path": "45"
    },
    "10378": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "POP",
      "path": "45"
    },
    "10379": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "POP",
      "path": "45"
    },
    "10380": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "POP",
      "path": "45"
    },
    "10381": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10383": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10384": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10385": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10387": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "NOT",
      "path": "45"
    },
    "10388": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10390": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10391": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "ADD",
      "path": "45"
    },
    "10392": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "AND",
      "path": "45"
    },
    "10393": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10394": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "ADD",
      "path": "45"
    },
    "10395": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10396": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10398": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10399": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "POP",
      "path": "45"
    },
    "10400": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10401": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "ADD",
      "path": "45"
    },
    "10402": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10403": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x28AC"
    },
    "10406": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10407": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10408": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3B66"
    },
    "10411": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4627,
        4659
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10412": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4627,
        4659
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10413": {
      "op": "POP"
    },
    "10414": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10416": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10418": {
      "op": "PUSH1",
      "value": "0x70"
    },
    "10420": {
      "op": "SHL"
    },
    "10421": {
      "op": "SUB"
    },
    "10422": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4610,
        4659
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10423": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4610,
        4659
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10424": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4610,
        4659
      ],
      "op": "AND",
      "path": "45"
    },
    "10425": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4610,
        4659
      ],
      "op": "SWAP4",
      "path": "45"
    },
    "10426": {
      "op": "POP"
    },
    "10427": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4610,
        4659
      ],
      "op": "AND",
      "path": "45"
    },
    "10428": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4610,
        4659
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10429": {
      "op": "POP"
    },
    "10430": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4557,
        4742
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2945"
    },
    "10433": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4557,
        4742
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10434": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4557,
        4742
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10435": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4716,
        4718
      ],
      "op": "DUP7",
      "path": "45",
      "statement": 90
    },
    "10436": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10438": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10440": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "10442": {
      "op": "SHL"
    },
    "10443": {
      "op": "SUB"
    },
    "10444": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4731
      ],
      "op": "AND",
      "path": "45"
    },
    "10445": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4731
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x902F1AC"
    },
    "10450": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10452": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10453": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10454": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "10459": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "AND",
      "path": "45"
    },
    "10460": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "10462": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "SHL",
      "path": "45"
    },
    "10463": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10464": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10465": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "10467": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "ADD",
      "path": "45"
    },
    "10468": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x60"
    },
    "10470": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10472": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10473": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10474": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP4",
      "path": "45"
    },
    "10475": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "SUB",
      "path": "45"
    },
    "10476": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10477": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP7",
      "path": "45"
    },
    "10478": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10479": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "10480": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10481": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10482": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10483": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x28FB"
    },
    "10486": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10487": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10489": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10490": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "REVERT",
      "path": "45"
    },
    "10491": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10492": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "POP",
      "path": "45"
    },
    "10493": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "GAS",
      "path": "45"
    },
    "10494": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "10495": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10496": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10497": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10498": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x290F"
    },
    "10501": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10502": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10503": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10505": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10506": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "10507": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10508": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10510": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "REVERT",
      "path": "45"
    },
    "10511": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10512": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "POP",
      "path": "45"
    },
    "10513": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "POP",
      "path": "45"
    },
    "10514": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "POP",
      "path": "45"
    },
    "10515": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "POP",
      "path": "45"
    },
    "10516": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10518": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10519": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10520": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10522": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "NOT",
      "path": "45"
    },
    "10523": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10525": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10526": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "ADD",
      "path": "45"
    },
    "10527": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "AND",
      "path": "45"
    },
    "10528": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10529": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "ADD",
      "path": "45"
    },
    "10530": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10531": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10533": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10534": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "POP",
      "path": "45"
    },
    "10535": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10536": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "ADD",
      "path": "45"
    },
    "10537": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10538": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2933"
    },
    "10541": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10542": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10543": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3B66"
    },
    "10546": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4701,
        4733
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10547": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4701,
        4733
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10548": {
      "op": "POP"
    },
    "10549": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10551": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10553": {
      "op": "PUSH1",
      "value": "0x70"
    },
    "10555": {
      "op": "SHL"
    },
    "10556": {
      "op": "SUB"
    },
    "10557": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4684,
        4733
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10558": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4684,
        4733
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10559": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4684,
        4733
      ],
      "op": "AND",
      "path": "45"
    },
    "10560": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4684,
        4733
      ],
      "op": "SWAP4",
      "path": "45"
    },
    "10561": {
      "op": "POP"
    },
    "10562": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4684,
        4733
      ],
      "op": "AND",
      "path": "45"
    },
    "10563": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4684,
        4733
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10564": {
      "op": "POP"
    },
    "10565": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4557,
        4742
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10566": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4773,
        4811
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 91,
      "value": "0x2951"
    },
    "10569": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4788,
        4792
      ],
      "op": "DUP5",
      "path": "45"
    },
    "10570": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4794,
        4798
      ],
      "op": "DUP5",
      "path": "45"
    },
    "10571": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4800,
        4804
      ],
      "op": "DUP5",
      "path": "45"
    },
    "10572": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4806,
        4810
      ],
      "op": "DUP5",
      "path": "45"
    },
    "10573": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4773,
        4787
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3302"
    },
    "10576": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        4773,
        4811
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10577": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4773,
        4811
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10578": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4749,
        4811
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10579": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4749,
        4811
      ],
      "op": "SWAP7",
      "path": "45"
    },
    "10580": {
      "op": "POP"
    },
    "10581": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4749,
        4811
      ],
      "op": "SWAP5",
      "path": "45"
    },
    "10582": {
      "op": "POP"
    },
    "10583": {
      "op": "POP"
    },
    "10584": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4858,
        4869
      ],
      "op": "DUP5",
      "path": "45"
    },
    "10585": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4858,
        4869
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10586": {
      "branch": 171,
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4858,
        4869
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "10587": {
      "op": "POP"
    },
    "10588": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4854,
        5092
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2A76"
    },
    "10591": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4854,
        5092
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10592": {
      "op": "POP"
    },
    "10593": {
      "op": "POP"
    },
    "10594": {
      "branch": 171,
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4854,
        5092
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10595": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10597": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10598": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10599": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4917,
        4918
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x2"
    },
    "10601": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10602": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10603": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10604": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4879,
        4900
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x60"
    },
    "10606": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10607": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "DUP4",
      "path": "45"
    },
    "10608": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "ADD",
      "path": "45"
    },
    "10609": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "DUP5",
      "path": "45"
    },
    "10610": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10611": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4879,
        4900
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "10612": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "10614": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "DUP4",
      "path": "45"
    },
    "10615": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "ADD",
      "path": "45"
    },
    "10616": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10617": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10618": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "CALLDATASIZE",
      "path": "45"
    },
    "10619": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "DUP4",
      "path": "45"
    },
    "10620": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "CALLDATACOPY",
      "path": "45"
    },
    "10621": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "ADD",
      "path": "45"
    },
    "10622": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10623": {
      "op": "POP"
    },
    "10624": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4903,
        4919
      ],
      "op": "POP",
      "path": "45"
    },
    "10625": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4879,
        4919
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10626": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4879,
        4919
      ],
      "op": "POP",
      "path": "45"
    },
    "10627": {
      "branch": 172,
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4948,
        4958
      ],
      "op": "DUP2",
      "path": "45",
      "statement": 92
    },
    "10628": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4948,
        4996
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x298E"
    },
    "10631": {
      "branch": 172,
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4948,
        4996
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10632": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4981,
        4987
      ],
      "op": "DUP7",
      "path": "45"
    },
    "10633": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4989,
        4995
      ],
      "op": "DUP7",
      "path": "45"
    },
    "10634": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4948,
        4996
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2991"
    },
    "10637": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4948,
        4996
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10638": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4948,
        4996
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10639": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4962,
        4968
      ],
      "op": "DUP6",
      "path": "45"
    },
    "10640": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4970,
        4976
      ],
      "op": "DUP8",
      "path": "45"
    },
    "10641": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4948,
        4996
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10642": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4932
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10643": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4933,
        4934
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10645": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10646": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10647": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10648": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "LT",
      "path": "45"
    },
    "10649": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x299E"
    },
    "10652": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10653": {
      "dev": "Index out of range",
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "INVALID",
      "path": "45"
    },
    "10654": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10655": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "10657": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "MUL",
      "path": "45"
    },
    "10658": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "10660": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "ADD",
      "path": "45"
    },
    "10661": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4928,
        4935
      ],
      "op": "ADD",
      "path": "45"
    },
    "10662": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4941
      ],
      "op": "DUP4",
      "path": "45"
    },
    "10663": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4942,
        4943
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1"
    },
    "10665": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10666": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10667": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10668": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "LT",
      "path": "45"
    },
    "10669": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x29B2"
    },
    "10672": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10673": {
      "dev": "Index out of range",
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "INVALID",
      "path": "45"
    },
    "10674": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10675": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10677": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10679": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "10681": {
      "op": "SHL"
    },
    "10682": {
      "op": "SUB"
    },
    "10683": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4927,
        4996
      ],
      "op": "SWAP4",
      "path": "45"
    },
    "10684": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4927,
        4996
      ],
      "op": "DUP5",
      "path": "45"
    },
    "10685": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4927,
        4996
      ],
      "op": "AND",
      "path": "45"
    },
    "10686": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "10688": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10689": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10690": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "MUL",
      "path": "45"
    },
    "10691": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "10692": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10693": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "10694": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "ADD",
      "path": "45"
    },
    "10695": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4937,
        4944
      ],
      "op": "ADD",
      "path": "45"
    },
    "10696": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4927,
        4996
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10697": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4927,
        4996
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10698": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4927,
        4996
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10699": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4927,
        4996
      ],
      "op": "AND",
      "path": "45"
    },
    "10700": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4927,
        4996
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10701": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4927,
        4996
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10702": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4927,
        4996
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10703": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 93,
      "value": "0x40"
    },
    "10705": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10706": {
      "op": "PUSH4",
      "value": "0x38ED1739"
    },
    "10711": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "10713": {
      "op": "SHL"
    },
    "10714": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10715": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10716": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5010
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "10749": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5035
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10750": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5035
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10751": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5035
      ],
      "op": "AND",
      "path": "45"
    },
    "10752": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5035
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10753": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5035
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x38ED1739"
    },
    "10758": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5035
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10759": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2A1D"
    },
    "10762": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10763": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5036,
        5043
      ],
      "op": "DUP7",
      "path": "45"
    },
    "10764": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5036,
        5043
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10765": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5045,
        5046
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10767": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5045,
        5046
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10768": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5048,
        5052
      ],
      "op": "DUP7",
      "path": "45"
    },
    "10769": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5048,
        5052
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10770": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5062,
        5066
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "10771": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5062,
        5066
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10772": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5069,
        5084
      ],
      "op": "TIMESTAMP",
      "path": "45"
    },
    "10773": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5069,
        5084
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10774": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "10776": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "ADD",
      "path": "45"
    },
    "10777": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x4234"
    },
    "10780": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        5004,
        5085
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10781": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10782": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10784": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10786": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10787": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10788": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP4",
      "path": "45"
    },
    "10789": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "SUB",
      "path": "45"
    },
    "10790": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10791": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10793": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP8",
      "path": "45"
    },
    "10794": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10795": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "10796": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10797": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10798": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10799": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2A37"
    },
    "10802": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10803": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10805": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10806": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "REVERT",
      "path": "45"
    },
    "10807": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10808": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "POP",
      "path": "45"
    },
    "10809": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "GAS",
      "path": "45"
    },
    "10810": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "CALL",
      "path": "45"
    },
    "10811": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10812": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10813": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10814": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2A4B"
    },
    "10817": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10818": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10819": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10821": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10822": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "10823": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10824": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10826": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "REVERT",
      "path": "45"
    },
    "10827": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10828": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "POP",
      "path": "45"
    },
    "10829": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "POP",
      "path": "45"
    },
    "10830": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "POP",
      "path": "45"
    },
    "10831": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "POP",
      "path": "45"
    },
    "10832": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10834": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10835": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10836": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10838": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10839": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "10840": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10842": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10843": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10844": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10845": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "ADD",
      "path": "45"
    },
    "10846": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "10848": {
      "op": "NOT"
    },
    "10849": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "AND",
      "path": "45"
    },
    "10850": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10851": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "ADD",
      "path": "45"
    },
    "10852": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10854": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10855": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2A73"
    },
    "10858": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10859": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10860": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10861": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "ADD",
      "path": "45"
    },
    "10862": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10863": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3A71"
    },
    "10866": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        5004,
        5085
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10867": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10868": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5004,
        5085
      ],
      "op": "POP",
      "path": "45"
    },
    "10869": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4854,
        5092
      ],
      "op": "POP",
      "path": "45"
    },
    "10870": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        4854,
        5092
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10871": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10873": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10874": {
      "op": "PUSH4",
      "value": "0x70A08231"
    },
    "10879": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "10881": {
      "op": "SHL"
    },
    "10882": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10883": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10884": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5122,
        5131
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10886": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5122,
        5131
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10887": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10889": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "10891": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "10893": {
      "op": "SHL"
    },
    "10894": {
      "op": "SUB"
    },
    "10895": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5158
      ],
      "op": "DUP9",
      "path": "45"
    },
    "10896": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5158
      ],
      "op": "AND",
      "path": "45"
    },
    "10897": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5158
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10898": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5158
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x70A08231"
    },
    "10903": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5158
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10904": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2AA5"
    },
    "10907": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10908": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5167,
        5171
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "10909": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5167,
        5171
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10910": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "10912": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "ADD",
      "path": "45"
    },
    "10913": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C81"
    },
    "10916": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        5134,
        5173
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10917": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10918": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "10920": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10922": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10923": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10924": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP4",
      "path": "45"
    },
    "10925": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "SUB",
      "path": "45"
    },
    "10926": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10927": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP7",
      "path": "45"
    },
    "10928": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10929": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "10930": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10931": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10932": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10933": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2ABD"
    },
    "10936": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10937": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10939": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10940": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "REVERT",
      "path": "45"
    },
    "10941": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10942": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "POP",
      "path": "45"
    },
    "10943": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "GAS",
      "path": "45"
    },
    "10944": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "10945": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10946": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10947": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "10948": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2AD1"
    },
    "10951": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "10952": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10953": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10955": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10956": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "10957": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10958": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "10960": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "REVERT",
      "path": "45"
    },
    "10961": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10962": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "POP",
      "path": "45"
    },
    "10963": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "POP",
      "path": "45"
    },
    "10964": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "POP",
      "path": "45"
    },
    "10965": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "POP",
      "path": "45"
    },
    "10966": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10968": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "10969": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "10970": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10972": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "NOT",
      "path": "45"
    },
    "10973": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "10975": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10976": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "ADD",
      "path": "45"
    },
    "10977": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "AND",
      "path": "45"
    },
    "10978": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP3",
      "path": "45"
    },
    "10979": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "ADD",
      "path": "45"
    },
    "10980": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP1",
      "path": "45"
    },
    "10981": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "10983": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "10984": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "POP",
      "path": "45"
    },
    "10985": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "DUP2",
      "path": "45"
    },
    "10986": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "ADD",
      "path": "45"
    },
    "10987": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10988": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2AF5"
    },
    "10991": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "10992": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10993": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "10996": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        5134,
        5173
      ],
      "op": "JUMP",
      "path": "45"
    },
    "10997": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5134,
        5173
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "10998": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5122,
        5173
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "10999": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5122,
        5173
      ],
      "op": "POP",
      "path": "45"
    },
    "11000": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5179,
        5188
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "11002": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5198,
        5204
      ],
      "op": "DUP7",
      "path": "45"
    },
    "11003": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11005": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11007": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "11009": {
      "op": "SHL"
    },
    "11010": {
      "op": "SUB"
    },
    "11011": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5215
      ],
      "op": "AND",
      "path": "45"
    },
    "11012": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5215
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0x70A08231"
    },
    "11017": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5224,
        5228
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "11018": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "11020": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "11021": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP3",
      "path": "45"
    },
    "11022": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xFFFFFFFF"
    },
    "11027": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "AND",
      "path": "45"
    },
    "11028": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "11030": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "SHL",
      "path": "45"
    },
    "11031": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP2",
      "path": "45"
    },
    "11032": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "11033": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "11035": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "ADD",
      "path": "45"
    },
    "11036": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2B25"
    },
    "11039": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "11040": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11041": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3C81"
    },
    "11044": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        5191,
        5230
      ],
      "op": "JUMP",
      "path": "45"
    },
    "11045": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "11046": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x20"
    },
    "11048": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "11050": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "11051": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11052": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP4",
      "path": "45"
    },
    "11053": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "SUB",
      "path": "45"
    },
    "11054": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP2",
      "path": "45"
    },
    "11055": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP7",
      "path": "45"
    },
    "11056": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11057": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "11058": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "11059": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11060": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "11061": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2B3D"
    },
    "11064": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "11065": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "11067": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11068": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "REVERT",
      "path": "45"
    },
    "11069": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "11070": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "POP",
      "path": "45"
    },
    "11071": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "GAS",
      "path": "45"
    },
    "11072": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "STATICCALL",
      "path": "45"
    },
    "11073": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "11074": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11075": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "11076": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2B51"
    },
    "11079": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "11080": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "11081": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "11083": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11084": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "11085": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "11086": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "11088": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "REVERT",
      "path": "45"
    },
    "11089": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "11090": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "POP",
      "path": "45"
    },
    "11091": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "POP",
      "path": "45"
    },
    "11092": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "POP",
      "path": "45"
    },
    "11093": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "POP",
      "path": "45"
    },
    "11094": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "11096": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "11097": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "11098": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "11100": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "NOT",
      "path": "45"
    },
    "11101": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "11103": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP3",
      "path": "45"
    },
    "11104": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "ADD",
      "path": "45"
    },
    "11105": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "AND",
      "path": "45"
    },
    "11106": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP3",
      "path": "45"
    },
    "11107": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "ADD",
      "path": "45"
    },
    "11108": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11109": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "11111": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "11112": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "POP",
      "path": "45"
    },
    "11113": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "DUP2",
      "path": "45"
    },
    "11114": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "ADD",
      "path": "45"
    },
    "11115": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11116": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2B75"
    },
    "11119": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "11120": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11121": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BBA"
    },
    "11124": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        5191,
        5230
      ],
      "op": "JUMP",
      "path": "45"
    },
    "11125": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5191,
        5230
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "11126": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5179,
        5230
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11127": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5179,
        5230
      ],
      "op": "POP",
      "path": "45"
    },
    "11128": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5247,
        5248
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "11130": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5240,
        5244
      ],
      "op": "DUP3",
      "path": "45"
    },
    "11131": {
      "branch": 173,
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5240,
        5248
      ],
      "op": "GT",
      "path": "45"
    },
    "11132": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5240,
        5260
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11133": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5240,
        5260
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2B86"
    },
    "11136": {
      "branch": 173,
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5240,
        5260
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "11137": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5240,
        5260
      ],
      "op": "POP",
      "path": "45"
    },
    "11138": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5259,
        5260
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "11140": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5252,
        5256
      ],
      "op": "DUP2",
      "path": "45"
    },
    "11141": {
      "branch": 174,
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5252,
        5260
      ],
      "op": "GT",
      "path": "45"
    },
    "11142": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5240,
        5260
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "11143": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5236,
        5454
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "11144": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5236,
        5454
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0xEA9"
    },
    "11147": {
      "branch": 174,
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5236,
        5454
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "11148": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 94,
      "value": "0x40"
    },
    "11150": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "11151": {
      "op": "PUSH3",
      "value": "0xE8E337"
    },
    "11155": {
      "op": "PUSH1",
      "value": "0xE8"
    },
    "11157": {
      "op": "SHL"
    },
    "11158": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP2",
      "path": "45"
    },
    "11159": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "11160": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11162": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11164": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "11166": {
      "op": "SHL"
    },
    "11167": {
      "op": "SUB"
    },
    "11168": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5276
      ],
      "op": "PUSH32",
      "path": "45",
      "value": "0x0"
    },
    "11201": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5289
      ],
      "op": "AND",
      "path": "45"
    },
    "11202": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5289
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11203": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5289
      ],
      "op": "PUSH4",
      "path": "45",
      "value": "0xE8E33700"
    },
    "11208": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5289
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11209": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2BEC"
    },
    "11212": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11213": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5299,
        5305
      ],
      "op": "DUP12",
      "path": "45"
    },
    "11214": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5299,
        5305
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11215": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5315,
        5321
      ],
      "op": "DUP12",
      "path": "45"
    },
    "11216": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5315,
        5321
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11217": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5331,
        5335
      ],
      "op": "DUP8",
      "path": "45"
    },
    "11218": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5331,
        5335
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11219": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5345,
        5349
      ],
      "op": "DUP8",
      "path": "45"
    },
    "11220": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5345,
        5349
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11221": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5359,
        5370
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xC0"
    },
    "11223": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5359,
        5370
      ],
      "op": "DUP15",
      "path": "45"
    },
    "11224": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5359,
        5370
      ],
      "op": "ADD",
      "path": "45"
    },
    "11225": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5359,
        5370
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "11226": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5359,
        5370
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11227": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5380,
        5391
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0xE0"
    },
    "11229": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5380,
        5391
      ],
      "op": "DUP16",
      "path": "45"
    },
    "11230": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5380,
        5391
      ],
      "op": "ADD",
      "path": "45"
    },
    "11231": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5380,
        5391
      ],
      "op": "CALLDATALOAD",
      "path": "45"
    },
    "11232": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5380,
        5391
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11233": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5409,
        5413
      ],
      "op": "ADDRESS",
      "path": "45"
    },
    "11234": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5409,
        5413
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11235": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5424,
        5439
      ],
      "op": "TIMESTAMP",
      "path": "45"
    },
    "11236": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5424,
        5439
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11237": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "11239": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "ADD",
      "path": "45"
    },
    "11240": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3CEF"
    },
    "11243": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        5270,
        5447
      ],
      "op": "JUMP",
      "path": "45"
    },
    "11244": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "11245": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x60"
    },
    "11247": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "11249": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "11250": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11251": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP4",
      "path": "45"
    },
    "11252": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "SUB",
      "path": "45"
    },
    "11253": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP2",
      "path": "45"
    },
    "11254": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "11256": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP8",
      "path": "45"
    },
    "11257": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11258": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "EXTCODESIZE",
      "path": "45"
    },
    "11259": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "11260": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11261": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "11262": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2C06"
    },
    "11265": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "11266": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "11268": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11269": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "REVERT",
      "path": "45"
    },
    "11270": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "11271": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "POP",
      "path": "45"
    },
    "11272": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "GAS",
      "path": "45"
    },
    "11273": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "CALL",
      "path": "45"
    },
    "11274": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "11275": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11276": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "11277": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x2C1A"
    },
    "11280": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "11281": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "11282": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "11284": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11285": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "RETURNDATACOPY",
      "path": "45"
    },
    "11286": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "11287": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "11289": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "REVERT",
      "path": "45"
    },
    "11290": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "11291": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "POP",
      "path": "45"
    },
    "11292": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "POP",
      "path": "45"
    },
    "11293": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "POP",
      "path": "45"
    },
    "11294": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "POP",
      "path": "45"
    },
    "11295": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "11297": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "11298": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "RETURNDATASIZE",
      "path": "45"
    },
    "11299": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "11301": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "NOT",
      "path": "45"
    },
    "11302": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x1F"
    },
    "11304": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP3",
      "path": "45"
    },
    "11305": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "ADD",
      "path": "45"
    },
    "11306": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "AND",
      "path": "45"
    },
    "11307": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP3",
      "path": "45"
    },
    "11308": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "ADD",
      "path": "45"
    },
    "11309": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP1",
      "path": "45"
    },
    "11310": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "11312": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "11313": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "POP",
      "path": "45"
    },
    "11314": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "DUP2",
      "path": "45"
    },
    "11315": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "ADD",
      "path": "45"
    },
    "11316": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11317": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1591"
    },
    "11320": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "11321": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "11322": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "offset": [
        5270,
        5447
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3BF5"
    },
    "11325": {
      "fn": "UniswapV2SpellV1.addLiquidityInternal",
      "jump": "i",
      "offset": [
        5270,
        5447
      ],
      "op": "JUMP",
      "path": "45"
    },
    "11326": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3635,
        3873
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11327": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3707,
        3717
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11328": {
      "branch": 186,
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3707,
        3717
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11329": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3703,
        3869
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BD8"
    },
    "11332": {
      "branch": 186,
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3703,
        3869
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "11333": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3727,
        3764
      ],
      "op": "PUSH2",
      "path": "41",
      "statement": 95,
      "value": "0x2C6E"
    },
    "11336": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3741,
        3746
      ],
      "op": "DUP3",
      "path": "41"
    },
    "11337": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3756,
        3762
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "11370": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3727,
        3740
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2477"
    },
    "11373": {
      "fn": "BasicSpell.doPutCollateral",
      "jump": "i",
      "offset": [
        3727,
        3764
      ],
      "op": "JUMP",
      "path": "41"
    },
    "11374": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3727,
        3764
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11375": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "PUSH1",
      "path": "41",
      "statement": 96,
      "value": "0x40"
    },
    "11377": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "11378": {
      "op": "PUSH4",
      "value": "0x40C10F19"
    },
    "11383": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "11385": {
      "op": "SHL"
    },
    "11386": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "DUP2",
      "path": "41"
    },
    "11387": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "11388": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11390": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11392": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "11394": {
      "op": "SHL"
    },
    "11395": {
      "op": "SUB"
    },
    "11396": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3778
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "11429": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3783
      ],
      "op": "AND",
      "path": "41"
    },
    "11430": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3783
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11431": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3783
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0x40C10F19"
    },
    "11436": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3783
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11437": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2CBC"
    },
    "11440": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11441": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3784,
        3789
      ],
      "op": "DUP6",
      "path": "41"
    },
    "11442": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3784,
        3789
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11443": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3791,
        3797
      ],
      "op": "DUP6",
      "path": "41"
    },
    "11444": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3791,
        3797
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11445": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "11447": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "ADD",
      "path": "41"
    },
    "11448": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3D53"
    },
    "11451": {
      "fn": "BasicSpell.doPutCollateral",
      "jump": "i",
      "offset": [
        3772,
        3798
      ],
      "op": "JUMP",
      "path": "41"
    },
    "11452": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11453": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11455": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "11457": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "11458": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11459": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "DUP4",
      "path": "41"
    },
    "11460": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "SUB",
      "path": "41"
    },
    "11461": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "DUP2",
      "path": "41"
    },
    "11462": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11464": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "DUP8",
      "path": "41"
    },
    "11465": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11466": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "EXTCODESIZE",
      "path": "41"
    },
    "11467": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11468": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11469": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11470": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2CD6"
    },
    "11473": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "11474": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11476": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11477": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "REVERT",
      "path": "41"
    },
    "11478": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11479": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "POP",
      "path": "41"
    },
    "11480": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "GAS",
      "path": "41"
    },
    "11481": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "CALL",
      "path": "41"
    },
    "11482": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11483": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11484": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11485": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2CEA"
    },
    "11488": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "11489": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "11490": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11492": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11493": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "RETURNDATACOPY",
      "path": "41"
    },
    "11494": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "11495": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11497": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "REVERT",
      "path": "41"
    },
    "11498": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3772,
        3798
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11499": {
      "op": "POP"
    },
    "11500": {
      "op": "POP"
    },
    "11501": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3862
      ],
      "op": "PUSH1",
      "path": "41",
      "statement": 97,
      "value": "0x40"
    },
    "11503": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3862
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "11504": {
      "op": "PUSH4",
      "value": "0x314568D9"
    },
    "11509": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "11511": {
      "op": "SHL"
    },
    "11512": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3862
      ],
      "op": "DUP2",
      "path": "41"
    },
    "11513": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3862
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "11514": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11516": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11518": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "11520": {
      "op": "SHL"
    },
    "11521": {
      "op": "SUB"
    },
    "11522": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3810
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "11555": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3824
      ],
      "op": "DUP2",
      "path": "41"
    },
    "11556": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3824
      ],
      "op": "AND",
      "path": "41"
    },
    "11557": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3824
      ],
      "op": "SWAP4",
      "path": "41"
    },
    "11558": {
      "op": "POP"
    },
    "11559": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3824
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0x314568D9"
    },
    "11564": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3824
      ],
      "op": "SWAP3",
      "path": "41"
    },
    "11565": {
      "op": "POP"
    },
    "11566": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3862
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BA5"
    },
    "11569": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3862
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "11570": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3833,
        3839
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "11603": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3833,
        3839
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "11604": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3842,
        3853
      ],
      "op": "DUP8",
      "path": "41"
    },
    "11605": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3842,
        3853
      ],
      "op": "AND",
      "path": "41"
    },
    "11606": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3842,
        3853
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11607": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3855,
        3861
      ],
      "op": "DUP7",
      "path": "41"
    },
    "11608": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3855,
        3861
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11609": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3862
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "11611": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3862
      ],
      "op": "ADD",
      "path": "41"
    },
    "11612": {
      "fn": "BasicSpell.doPutCollateral",
      "offset": [
        3806,
        3862
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3D6C"
    },
    "11615": {
      "fn": "BasicSpell.doPutCollateral",
      "jump": "i",
      "offset": [
        3806,
        3862
      ],
      "op": "JUMP",
      "path": "41"
    },
    "11616": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2446,
        2728
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11617": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "11619": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "11620": {
      "op": "PUSH4",
      "value": "0x70A08231"
    },
    "11625": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "11627": {
      "op": "SHL"
    },
    "11628": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP2",
      "path": "41"
    },
    "11629": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "11630": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2484,
        2496
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11632": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2484,
        2496
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11633": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11635": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11637": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "11639": {
      "op": "SHL"
    },
    "11640": {
      "op": "SUB"
    },
    "11641": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2505,
        2509
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "11674": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2520
      ],
      "op": "AND",
      "path": "41"
    },
    "11675": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2520
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11676": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2520
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0x70A08231"
    },
    "11681": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2520
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11682": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2DAF"
    },
    "11685": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11686": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2529,
        2533
      ],
      "op": "ADDRESS",
      "path": "41"
    },
    "11687": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2529,
        2533
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11688": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "11690": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "ADD",
      "path": "41"
    },
    "11691": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3C81"
    },
    "11694": {
      "fn": "BasicSpell.doRefundETH",
      "jump": "i",
      "offset": [
        2499,
        2535
      ],
      "op": "JUMP",
      "path": "41"
    },
    "11695": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11696": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x20"
    },
    "11698": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "11700": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "11701": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11702": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP4",
      "path": "41"
    },
    "11703": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "SUB",
      "path": "41"
    },
    "11704": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP2",
      "path": "41"
    },
    "11705": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11707": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP8",
      "path": "41"
    },
    "11708": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11709": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "EXTCODESIZE",
      "path": "41"
    },
    "11710": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11711": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11712": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11713": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2DC9"
    },
    "11716": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "11717": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11719": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11720": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "REVERT",
      "path": "41"
    },
    "11721": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11722": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "POP",
      "path": "41"
    },
    "11723": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "GAS",
      "path": "41"
    },
    "11724": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "CALL",
      "path": "41"
    },
    "11725": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11726": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11727": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11728": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2DDD"
    },
    "11731": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "11732": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "11733": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11735": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11736": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "RETURNDATACOPY",
      "path": "41"
    },
    "11737": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "11738": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11740": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "REVERT",
      "path": "41"
    },
    "11741": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11742": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "POP",
      "path": "41"
    },
    "11743": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "POP",
      "path": "41"
    },
    "11744": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "POP",
      "path": "41"
    },
    "11745": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "POP",
      "path": "41"
    },
    "11746": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "11748": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "11749": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "11750": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x1F"
    },
    "11752": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "NOT",
      "path": "41"
    },
    "11753": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x1F"
    },
    "11755": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP3",
      "path": "41"
    },
    "11756": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "ADD",
      "path": "41"
    },
    "11757": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "AND",
      "path": "41"
    },
    "11758": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP3",
      "path": "41"
    },
    "11759": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "ADD",
      "path": "41"
    },
    "11760": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11761": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "11763": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "11764": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "POP",
      "path": "41"
    },
    "11765": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "DUP2",
      "path": "41"
    },
    "11766": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "ADD",
      "path": "41"
    },
    "11767": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11768": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2E01"
    },
    "11771": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "11772": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11773": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3BBA"
    },
    "11776": {
      "fn": "BasicSpell.doRefundETH",
      "jump": "i",
      "offset": [
        2499,
        2535
      ],
      "op": "JUMP",
      "path": "41"
    },
    "11777": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2499,
        2535
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11778": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2484,
        2535
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11779": {
      "op": "POP"
    },
    "11780": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2545,
        2556
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11781": {
      "branch": 187,
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2545,
        2556
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11782": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2541,
        2724
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2FA6"
    },
    "11785": {
      "branch": 187,
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2541,
        2724
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "11786": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "PUSH1",
      "path": "41",
      "statement": 98,
      "value": "0x40"
    },
    "11788": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "11789": {
      "op": "PUSH4",
      "value": "0x2E1A7D4D"
    },
    "11794": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "11796": {
      "op": "SHL"
    },
    "11797": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "DUP2",
      "path": "41"
    },
    "11798": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "11799": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11801": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11803": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "11805": {
      "op": "SHL"
    },
    "11806": {
      "op": "SUB"
    },
    "11807": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2572,
        2576
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "11840": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2586
      ],
      "op": "AND",
      "path": "41"
    },
    "11841": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2586
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11842": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2586
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0x2E1A7D4D"
    },
    "11847": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2586
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11848": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2E55"
    },
    "11851": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11852": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2587,
        2594
      ],
      "op": "DUP5",
      "path": "41"
    },
    "11853": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2587,
        2594
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "11854": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "11856": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "ADD",
      "path": "41"
    },
    "11857": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x4214"
    },
    "11860": {
      "fn": "BasicSpell.doRefundETH",
      "jump": "i",
      "offset": [
        2566,
        2595
      ],
      "op": "JUMP",
      "path": "41"
    },
    "11861": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11862": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11864": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "11866": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "11867": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11868": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "DUP4",
      "path": "41"
    },
    "11869": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "SUB",
      "path": "41"
    },
    "11870": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "DUP2",
      "path": "41"
    },
    "11871": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11873": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "DUP8",
      "path": "41"
    },
    "11874": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11875": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "EXTCODESIZE",
      "path": "41"
    },
    "11876": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11877": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11878": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11879": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2E6F"
    },
    "11882": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "11883": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11885": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11886": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "REVERT",
      "path": "41"
    },
    "11887": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11888": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "POP",
      "path": "41"
    },
    "11889": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "GAS",
      "path": "41"
    },
    "11890": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "CALL",
      "path": "41"
    },
    "11891": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11892": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11893": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11894": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2E83"
    },
    "11897": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "11898": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "11899": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11901": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11902": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "RETURNDATACOPY",
      "path": "41"
    },
    "11903": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "11904": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11906": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "REVERT",
      "path": "41"
    },
    "11907": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "11908": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "POP",
      "path": "41"
    },
    "11909": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "POP",
      "path": "41"
    },
    "11910": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "POP",
      "path": "41"
    },
    "11911": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2566,
        2595
      ],
      "op": "POP",
      "path": "41"
    },
    "11912": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2604,
        2616
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "11914": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2626
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "11947": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11949": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "11951": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "11953": {
      "op": "SHL"
    },
    "11954": {
      "op": "SUB"
    },
    "11955": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2635
      ],
      "op": "AND",
      "path": "41"
    },
    "11956": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2635
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0x630DC7CB"
    },
    "11961": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "11963": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "11964": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP2",
      "path": "41"
    },
    "11965": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0xFFFFFFFF"
    },
    "11970": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "AND",
      "path": "41"
    },
    "11971": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0xE0"
    },
    "11973": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "SHL",
      "path": "41"
    },
    "11974": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP2",
      "path": "41"
    },
    "11975": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "11976": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "11978": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "ADD",
      "path": "41"
    },
    "11979": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x20"
    },
    "11981": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "11983": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "11984": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11985": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP4",
      "path": "41"
    },
    "11986": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "SUB",
      "path": "41"
    },
    "11987": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP2",
      "path": "41"
    },
    "11988": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP7",
      "path": "41"
    },
    "11989": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11990": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "EXTCODESIZE",
      "path": "41"
    },
    "11991": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11992": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP1",
      "path": "41"
    },
    "11993": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "11994": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2EE2"
    },
    "11997": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "11998": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "12000": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12001": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "REVERT",
      "path": "41"
    },
    "12002": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12003": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "POP",
      "path": "41"
    },
    "12004": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "GAS",
      "path": "41"
    },
    "12005": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "STATICCALL",
      "path": "41"
    },
    "12006": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "12007": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12008": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "12009": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2EF6"
    },
    "12012": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "12013": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "12014": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "12016": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12017": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "RETURNDATACOPY",
      "path": "41"
    },
    "12018": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "12019": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "12021": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "REVERT",
      "path": "41"
    },
    "12022": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12023": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "POP",
      "path": "41"
    },
    "12024": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "POP",
      "path": "41"
    },
    "12025": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "POP",
      "path": "41"
    },
    "12026": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "POP",
      "path": "41"
    },
    "12027": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "12029": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "12030": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "12031": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x1F"
    },
    "12033": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "NOT",
      "path": "41"
    },
    "12034": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x1F"
    },
    "12036": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP3",
      "path": "41"
    },
    "12037": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "ADD",
      "path": "41"
    },
    "12038": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "AND",
      "path": "41"
    },
    "12039": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP3",
      "path": "41"
    },
    "12040": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "ADD",
      "path": "41"
    },
    "12041": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12042": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "12044": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "12045": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "POP",
      "path": "41"
    },
    "12046": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "DUP2",
      "path": "41"
    },
    "12047": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "ADD",
      "path": "41"
    },
    "12048": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12049": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2F1A"
    },
    "12052": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "12053": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12054": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3704"
    },
    "12057": {
      "fn": "BasicSpell.doRefundETH",
      "jump": "i",
      "offset": [
        2622,
        2637
      ],
      "op": "JUMP",
      "path": "41"
    },
    "12058": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2637
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12059": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "12061": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12062": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "12063": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2669,
        2670
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "12065": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "DUP2",
      "path": "41"
    },
    "12066": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "12067": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x20"
    },
    "12069": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "DUP2",
      "path": "41"
    },
    "12070": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "ADD",
      "path": "41"
    },
    "12071": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "12072": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "DUP3",
      "path": "41"
    },
    "12073": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12074": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "12075": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12077": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12079": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "12081": {
      "op": "SHL"
    },
    "12082": {
      "op": "SUB"
    },
    "12083": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2642
      ],
      "op": "SWAP3",
      "path": "41"
    },
    "12084": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2642
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12085": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2642
      ],
      "op": "SWAP3",
      "path": "41"
    },
    "12086": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2642
      ],
      "op": "AND",
      "path": "41"
    },
    "12087": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2642
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "12088": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2650,
        2657
      ],
      "op": "DUP5",
      "path": "41"
    },
    "12089": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2650,
        2657
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "12090": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2F43"
    },
    "12093": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "12094": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2659,
        2671
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12095": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3C65"
    },
    "12098": {
      "fn": "BasicSpell.doRefundETH",
      "jump": "i",
      "offset": [
        2622,
        2672
      ],
      "op": "JUMP",
      "path": "41"
    },
    "12099": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12100": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "12102": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "12104": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "12105": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12106": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "DUP4",
      "path": "41"
    },
    "12107": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "SUB",
      "path": "41"
    },
    "12108": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "DUP2",
      "path": "41"
    },
    "12109": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "DUP6",
      "path": "41"
    },
    "12110": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "DUP8",
      "path": "41"
    },
    "12111": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "GAS",
      "path": "41"
    },
    "12112": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "CALL",
      "path": "41"
    },
    "12113": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "SWAP3",
      "path": "41"
    },
    "12114": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "POP",
      "path": "41"
    },
    "12115": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "POP",
      "path": "41"
    },
    "12116": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "POP",
      "path": "41"
    },
    "12117": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "12118": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12119": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "12121": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "DUP2",
      "path": "41"
    },
    "12122": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "EQ",
      "path": "41"
    },
    "12123": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2F80"
    },
    "12126": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "12127": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "12129": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "12130": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "12131": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "POP",
      "path": "41"
    },
    "12132": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x1F"
    },
    "12134": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "NOT",
      "path": "41"
    },
    "12135": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x3F"
    },
    "12137": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "12138": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "ADD",
      "path": "41"
    },
    "12139": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "AND",
      "path": "41"
    },
    "12140": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "DUP3",
      "path": "41"
    },
    "12141": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "ADD",
      "path": "41"
    },
    "12142": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "12144": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "12145": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "12146": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "DUP3",
      "path": "41"
    },
    "12147": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "12148": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "12149": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "12151": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x20"
    },
    "12153": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "DUP5",
      "path": "41"
    },
    "12154": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "ADD",
      "path": "41"
    },
    "12155": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "RETURNDATACOPY",
      "path": "41"
    },
    "12156": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2F85"
    },
    "12159": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "JUMP",
      "path": "41"
    },
    "12160": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12161": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x60"
    },
    "12163": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "SWAP2",
      "path": "41"
    },
    "12164": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "POP",
      "path": "41"
    },
    "12165": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12166": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2622,
        2672
      ],
      "op": "POP",
      "path": "41"
    },
    "12167": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2603,
        2672
      ],
      "op": "POP",
      "path": "41"
    },
    "12168": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2603,
        2672
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12169": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2603,
        2672
      ],
      "op": "POP",
      "path": "41"
    },
    "12170": {
      "branch": 188,
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2688,
        2695
      ],
      "op": "DUP1",
      "path": "41",
      "statement": 99
    },
    "12171": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2680,
        2717
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BD8"
    },
    "12174": {
      "branch": 188,
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2680,
        2717
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "12175": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2680,
        2717
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "12177": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2680,
        2717
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "12178": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "12182": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "12184": {
      "op": "SHL"
    },
    "12185": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2680,
        2717
      ],
      "op": "DUP2",
      "path": "41"
    },
    "12186": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2680,
        2717
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "12187": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2680,
        2717
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "12189": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2680,
        2717
      ],
      "op": "ADD",
      "path": "41"
    },
    "12190": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2680,
        2717
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x186"
    },
    "12193": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2680,
        2717
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12194": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2680,
        2717
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3DE0"
    },
    "12197": {
      "fn": "BasicSpell.doRefundETH",
      "jump": "i",
      "offset": [
        2680,
        2717
      ],
      "op": "JUMP",
      "path": "41"
    },
    "12198": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2541,
        2724
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12199": {
      "fn": "BasicSpell.doRefundETH",
      "offset": [
        2446,
        2728
      ],
      "op": "POP",
      "path": "41"
    },
    "12200": {
      "fn": "BasicSpell.doRefundETH",
      "jump": "o",
      "offset": [
        2446,
        2728
      ],
      "op": "JUMP",
      "path": "41"
    },
    "12201": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        2967,
        3718
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "12202": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3386,
        3409
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x60"
    },
    "12204": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x2FFE"
    },
    "12207": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3440,
        3444
      ],
      "op": "DUP3",
      "path": "13"
    },
    "12208": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x40"
    },
    "12210": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "MLOAD",
      "path": "13"
    },
    "12211": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "DUP1",
      "path": "13"
    },
    "12212": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x40"
    },
    "12214": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "ADD",
      "path": "13"
    },
    "12215": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x40"
    },
    "12217": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "MSTORE",
      "path": "13"
    },
    "12218": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "DUP1",
      "path": "13"
    },
    "12219": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x20"
    },
    "12221": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "DUP2",
      "path": "13"
    },
    "12222": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "MSTORE",
      "path": "13"
    },
    "12223": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x20"
    },
    "12225": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "ADD",
      "path": "13"
    },
    "12226": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "PUSH32",
      "path": "13",
      "value": "0x5361666545524332303A206C6F772D6C6576656C2063616C6C206661696C6564"
    },
    "12259": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "DUP2",
      "path": "13"
    },
    "12260": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "MSTORE",
      "path": "13"
    },
    "12261": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "POP",
      "path": "13"
    },
    "12262": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3420,
        3425
      ],
      "op": "DUP6",
      "path": "13"
    },
    "12263": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12265": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12267": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "12269": {
      "op": "SHL"
    },
    "12270": {
      "op": "SUB"
    },
    "12271": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3439
      ],
      "op": "AND",
      "path": "13"
    },
    "12272": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3439
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x19F3"
    },
    "12275": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3439
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "12276": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "SWAP3",
      "path": "13"
    },
    "12277": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "SWAP2",
      "path": "13"
    },
    "12278": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "12279": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "PUSH4",
      "path": "13",
      "value": "0xFFFFFFFF"
    },
    "12284": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "AND",
      "path": "13"
    },
    "12285": {
      "fn": "SafeERC20._callOptionalReturn",
      "jump": "i",
      "offset": [
        3412,
        3481
      ],
      "op": "JUMP",
      "path": "13"
    },
    "12286": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3412,
        3481
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "12287": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3495,
        3512
      ],
      "op": "DUP1",
      "path": "13"
    },
    "12288": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3495,
        3512
      ],
      "op": "MLOAD",
      "path": "13"
    },
    "12289": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3386,
        3481
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "12290": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3386,
        3481
      ],
      "op": "SWAP2",
      "path": "13"
    },
    "12291": {
      "op": "POP"
    },
    "12292": {
      "branch": 203,
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3495,
        3516
      ],
      "op": "ISZERO",
      "path": "13"
    },
    "12293": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3491,
        3712
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x19E8"
    },
    "12296": {
      "branch": 203,
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3491,
        3712
      ],
      "op": "JUMPI",
      "path": "13"
    },
    "12297": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3635,
        3645
      ],
      "op": "DUP1",
      "path": "13",
      "statement": 100
    },
    "12298": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "DUP1",
      "path": "13"
    },
    "12299": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x20"
    },
    "12301": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "ADD",
      "path": "13"
    },
    "12302": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "12303": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "MLOAD",
      "path": "13"
    },
    "12304": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "DUP2",
      "path": "13"
    },
    "12305": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "ADD",
      "path": "13"
    },
    "12306": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "12307": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x301C"
    },
    "12310": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "SWAP2",
      "path": "13"
    },
    "12311": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "12312": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x3B22"
    },
    "12315": {
      "fn": "SafeERC20._callOptionalReturn",
      "jump": "i",
      "offset": [
        3624,
        3654
      ],
      "op": "JUMP",
      "path": "13"
    },
    "12316": {
      "branch": 204,
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3624,
        3654
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "12317": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3616,
        3701
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x19E8"
    },
    "12320": {
      "branch": 204,
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3616,
        3701
      ],
      "op": "JUMPI",
      "path": "13"
    },
    "12321": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3616,
        3701
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x40"
    },
    "12323": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3616,
        3701
      ],
      "op": "MLOAD",
      "path": "13"
    },
    "12324": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "12328": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "12330": {
      "op": "SHL"
    },
    "12331": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3616,
        3701
      ],
      "op": "DUP2",
      "path": "13"
    },
    "12332": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3616,
        3701
      ],
      "op": "MSTORE",
      "path": "13"
    },
    "12333": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3616,
        3701
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x4"
    },
    "12335": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3616,
        3701
      ],
      "op": "ADD",
      "path": "13"
    },
    "12336": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3616,
        3701
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x186"
    },
    "12339": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3616,
        3701
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "12340": {
      "fn": "SafeERC20._callOptionalReturn",
      "offset": [
        3616,
        3701
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x4174"
    },
    "12343": {
      "fn": "SafeERC20._callOptionalReturn",
      "jump": "i",
      "offset": [
        3616,
        3701
      ],
      "op": "JUMP",
      "path": "13"
    },
    "12344": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4608,
        5131
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "12345": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4735,
        4747
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x60"
    },
    "12347": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4792,
        4797
      ],
      "op": "DUP3",
      "path": "14",
      "statement": 101
    },
    "12348": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4767,
        4788
      ],
      "op": "SELFBALANCE",
      "path": "14"
    },
    "12349": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4767,
        4797
      ],
      "op": "LT",
      "path": "14"
    },
    "12350": {
      "branch": 177,
      "fn": "Address.functionCallWithValue",
      "offset": [
        4767,
        4797
      ],
      "op": "ISZERO",
      "path": "14"
    },
    "12351": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4759,
        4840
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x305A"
    },
    "12354": {
      "branch": 177,
      "fn": "Address.functionCallWithValue",
      "offset": [
        4759,
        4840
      ],
      "op": "JUMPI",
      "path": "14"
    },
    "12355": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4759,
        4840
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x40"
    },
    "12357": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4759,
        4840
      ],
      "op": "MLOAD",
      "path": "14"
    },
    "12358": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "12362": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "12364": {
      "op": "SHL"
    },
    "12365": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4759,
        4840
      ],
      "op": "DUP2",
      "path": "14"
    },
    "12366": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4759,
        4840
      ],
      "op": "MSTORE",
      "path": "14"
    },
    "12367": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4759,
        4840
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x4"
    },
    "12369": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4759,
        4840
      ],
      "op": "ADD",
      "path": "14"
    },
    "12370": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4759,
        4840
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x186"
    },
    "12373": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4759,
        4840
      ],
      "op": "SWAP1",
      "path": "14"
    },
    "12374": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4759,
        4840
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x3F2D"
    },
    "12377": {
      "fn": "Address.functionCallWithValue",
      "jump": "i",
      "offset": [
        4759,
        4840
      ],
      "op": "JUMP",
      "path": "14"
    },
    "12378": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4759,
        4840
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "12379": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4858,
        4876
      ],
      "op": "PUSH2",
      "path": "14",
      "statement": 102,
      "value": "0x3063"
    },
    "12382": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4869,
        4875
      ],
      "op": "DUP6",
      "path": "14"
    },
    "12383": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4858,
        4868
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x19ED"
    },
    "12386": {
      "fn": "Address.functionCallWithValue",
      "jump": "i",
      "offset": [
        4858,
        4876
      ],
      "op": "JUMP",
      "path": "14"
    },
    "12387": {
      "branch": 178,
      "fn": "Address.functionCallWithValue",
      "offset": [
        4858,
        4876
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "12388": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4850,
        4910
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x307F"
    },
    "12391": {
      "branch": 178,
      "fn": "Address.functionCallWithValue",
      "offset": [
        4850,
        4910
      ],
      "op": "JUMPI",
      "path": "14"
    },
    "12392": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4850,
        4910
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x40"
    },
    "12394": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4850,
        4910
      ],
      "op": "MLOAD",
      "path": "14"
    },
    "12395": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "12399": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "12401": {
      "op": "SHL"
    },
    "12402": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4850,
        4910
      ],
      "op": "DUP2",
      "path": "14"
    },
    "12403": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4850,
        4910
      ],
      "op": "MSTORE",
      "path": "14"
    },
    "12404": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4850,
        4910
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x4"
    },
    "12406": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4850,
        4910
      ],
      "op": "ADD",
      "path": "14"
    },
    "12407": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4850,
        4910
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x186"
    },
    "12410": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4850,
        4910
      ],
      "op": "SWAP1",
      "path": "14"
    },
    "12411": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4850,
        4910
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x410F"
    },
    "12414": {
      "fn": "Address.functionCallWithValue",
      "jump": "i",
      "offset": [
        4850,
        4910
      ],
      "op": "JUMP",
      "path": "14"
    },
    "12415": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4850,
        4910
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "12416": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4981,
        4993
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x0"
    },
    "12418": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4995,
        5018
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x60"
    },
    "12420": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5028
      ],
      "op": "DUP7",
      "path": "14"
    },
    "12421": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12423": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12425": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "12427": {
      "op": "SHL"
    },
    "12428": {
      "op": "SUB"
    },
    "12429": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5033
      ],
      "op": "AND",
      "path": "14"
    },
    "12430": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5042,
        5047
      ],
      "op": "DUP6",
      "path": "14"
    },
    "12431": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5050,
        5054
      ],
      "op": "DUP8",
      "path": "14"
    },
    "12432": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x40"
    },
    "12434": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "MLOAD",
      "path": "14"
    },
    "12435": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x309C"
    },
    "12438": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "SWAP2",
      "path": "14"
    },
    "12439": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "SWAP1",
      "path": "14"
    },
    "12440": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x3C65"
    },
    "12443": {
      "fn": "Address.functionCallWithValue",
      "jump": "i",
      "offset": [
        5022,
        5055
      ],
      "op": "JUMP",
      "path": "14"
    },
    "12444": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "12445": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x0"
    },
    "12447": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x40"
    },
    "12449": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "MLOAD",
      "path": "14"
    },
    "12450": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "DUP1",
      "path": "14"
    },
    "12451": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "DUP4",
      "path": "14"
    },
    "12452": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "SUB",
      "path": "14"
    },
    "12453": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "DUP2",
      "path": "14"
    },
    "12454": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "DUP6",
      "path": "14"
    },
    "12455": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "DUP8",
      "path": "14"
    },
    "12456": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "GAS",
      "path": "14"
    },
    "12457": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "CALL",
      "path": "14"
    },
    "12458": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "SWAP3",
      "path": "14"
    },
    "12459": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "POP",
      "path": "14"
    },
    "12460": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "POP",
      "path": "14"
    },
    "12461": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "POP",
      "path": "14"
    },
    "12462": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "RETURNDATASIZE",
      "path": "14"
    },
    "12463": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "DUP1",
      "path": "14"
    },
    "12464": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x0"
    },
    "12466": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "DUP2",
      "path": "14"
    },
    "12467": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "EQ",
      "path": "14"
    },
    "12468": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x30D9"
    },
    "12471": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "JUMPI",
      "path": "14"
    },
    "12472": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x40"
    },
    "12474": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "MLOAD",
      "path": "14"
    },
    "12475": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "SWAP2",
      "path": "14"
    },
    "12476": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "POP",
      "path": "14"
    },
    "12477": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x1F"
    },
    "12479": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "NOT",
      "path": "14"
    },
    "12480": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x3F"
    },
    "12482": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "RETURNDATASIZE",
      "path": "14"
    },
    "12483": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "ADD",
      "path": "14"
    },
    "12484": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "AND",
      "path": "14"
    },
    "12485": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "DUP3",
      "path": "14"
    },
    "12486": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "ADD",
      "path": "14"
    },
    "12487": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x40"
    },
    "12489": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "MSTORE",
      "path": "14"
    },
    "12490": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "RETURNDATASIZE",
      "path": "14"
    },
    "12491": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "DUP3",
      "path": "14"
    },
    "12492": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "MSTORE",
      "path": "14"
    },
    "12493": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "RETURNDATASIZE",
      "path": "14"
    },
    "12494": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x0"
    },
    "12496": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x20"
    },
    "12498": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "DUP5",
      "path": "14"
    },
    "12499": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "ADD",
      "path": "14"
    },
    "12500": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "RETURNDATACOPY",
      "path": "14"
    },
    "12501": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x30DE"
    },
    "12504": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "JUMP",
      "path": "14"
    },
    "12505": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "12506": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x60"
    },
    "12508": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "SWAP2",
      "path": "14"
    },
    "12509": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "POP",
      "path": "14"
    },
    "12510": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "12511": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5022,
        5055
      ],
      "op": "POP",
      "path": "14"
    },
    "12512": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4980,
        5055
      ],
      "op": "SWAP2",
      "path": "14"
    },
    "12513": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4980,
        5055
      ],
      "op": "POP",
      "path": "14"
    },
    "12514": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4980,
        5055
      ],
      "op": "SWAP2",
      "path": "14"
    },
    "12515": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4980,
        5055
      ],
      "op": "POP",
      "path": "14"
    },
    "12516": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5072,
        5124
      ],
      "op": "PUSH2",
      "path": "14",
      "statement": 103,
      "value": "0x30EE"
    },
    "12519": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5090,
        5097
      ],
      "op": "DUP3",
      "path": "14"
    },
    "12520": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5099,
        5109
      ],
      "op": "DUP3",
      "path": "14"
    },
    "12521": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5111,
        5123
      ],
      "op": "DUP7",
      "path": "14"
    },
    "12522": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5072,
        5089
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x3351"
    },
    "12525": {
      "fn": "Address.functionCallWithValue",
      "jump": "i",
      "offset": [
        5072,
        5124
      ],
      "op": "JUMP",
      "path": "14"
    },
    "12526": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5072,
        5124
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "12527": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        5065,
        5124
      ],
      "op": "SWAP8",
      "path": "14"
    },
    "12528": {
      "fn": "Address.functionCallWithValue",
      "offset": [
        4608,
        5131
      ],
      "op": "SWAP7",
      "path": "14"
    },
    "12529": {
      "op": "POP"
    },
    "12530": {
      "op": "POP"
    },
    "12531": {
      "op": "POP"
    },
    "12532": {
      "op": "POP"
    },
    "12533": {
      "op": "POP"
    },
    "12534": {
      "op": "POP"
    },
    "12535": {
      "op": "POP"
    },
    "12536": {
      "fn": "Address.functionCallWithValue",
      "jump": "o",
      "offset": [
        4608,
        5131
      ],
      "op": "JUMP",
      "path": "14"
    },
    "12537": {
      "fn": "SafeMath.sub",
      "offset": [
        3136,
        3291
      ],
      "op": "JUMPDEST",
      "path": "4"
    },
    "12538": {
      "fn": "SafeMath.sub",
      "offset": [
        3194,
        3201
      ],
      "op": "PUSH1",
      "path": "4",
      "value": "0x0"
    },
    "12540": {
      "fn": "SafeMath.sub",
      "offset": [
        3226,
        3227
      ],
      "op": "DUP3",
      "path": "4",
      "statement": 104
    },
    "12541": {
      "fn": "SafeMath.sub",
      "offset": [
        3221,
        3222
      ],
      "op": "DUP3",
      "path": "4"
    },
    "12542": {
      "fn": "SafeMath.sub",
      "offset": [
        3221,
        3227
      ],
      "op": "GT",
      "path": "4"
    },
    "12543": {
      "branch": 205,
      "fn": "SafeMath.sub",
      "offset": [
        3221,
        3227
      ],
      "op": "ISZERO",
      "path": "4"
    },
    "12544": {
      "fn": "SafeMath.sub",
      "offset": [
        3213,
        3262
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x311B"
    },
    "12547": {
      "branch": 205,
      "fn": "SafeMath.sub",
      "offset": [
        3213,
        3262
      ],
      "op": "JUMPI",
      "path": "4"
    },
    "12548": {
      "fn": "SafeMath.sub",
      "offset": [
        3213,
        3262
      ],
      "op": "PUSH1",
      "path": "4",
      "value": "0x40"
    },
    "12550": {
      "fn": "SafeMath.sub",
      "offset": [
        3213,
        3262
      ],
      "op": "MLOAD",
      "path": "4"
    },
    "12551": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "12555": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "12557": {
      "op": "SHL"
    },
    "12558": {
      "fn": "SafeMath.sub",
      "offset": [
        3213,
        3262
      ],
      "op": "DUP2",
      "path": "4"
    },
    "12559": {
      "fn": "SafeMath.sub",
      "offset": [
        3213,
        3262
      ],
      "op": "MSTORE",
      "path": "4"
    },
    "12560": {
      "fn": "SafeMath.sub",
      "offset": [
        3213,
        3262
      ],
      "op": "PUSH1",
      "path": "4",
      "value": "0x4"
    },
    "12562": {
      "fn": "SafeMath.sub",
      "offset": [
        3213,
        3262
      ],
      "op": "ADD",
      "path": "4"
    },
    "12563": {
      "fn": "SafeMath.sub",
      "offset": [
        3213,
        3262
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x186"
    },
    "12566": {
      "fn": "SafeMath.sub",
      "offset": [
        3213,
        3262
      ],
      "op": "SWAP1",
      "path": "4"
    },
    "12567": {
      "fn": "SafeMath.sub",
      "offset": [
        3213,
        3262
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x3EF6"
    },
    "12570": {
      "fn": "SafeMath.sub",
      "jump": "i",
      "offset": [
        3213,
        3262
      ],
      "op": "JUMP",
      "path": "4"
    },
    "12571": {
      "fn": "SafeMath.sub",
      "offset": [
        3213,
        3262
      ],
      "op": "JUMPDEST",
      "path": "4"
    },
    "12572": {
      "op": "POP"
    },
    "12573": {
      "fn": "SafeMath.sub",
      "offset": [
        3279,
        3284
      ],
      "op": "SWAP1",
      "path": "4",
      "statement": 105
    },
    "12574": {
      "fn": "SafeMath.sub",
      "offset": [
        3279,
        3284
      ],
      "op": "SUB",
      "path": "4"
    },
    "12575": {
      "fn": "SafeMath.sub",
      "offset": [
        3279,
        3284
      ],
      "op": "SWAP1",
      "path": "4"
    },
    "12576": {
      "fn": "SafeMath.sub",
      "jump": "o",
      "offset": [
        3136,
        3291
      ],
      "op": "JUMP",
      "path": "4"
    },
    "12577": {
      "fn": "SafeMath.add",
      "offset": [
        2690,
        2865
      ],
      "op": "JUMPDEST",
      "path": "4"
    },
    "12578": {
      "fn": "SafeMath.add",
      "offset": [
        2748,
        2755
      ],
      "op": "PUSH1",
      "path": "4",
      "value": "0x0"
    },
    "12580": {
      "fn": "SafeMath.add",
      "offset": [
        2779,
        2784
      ],
      "op": "DUP3",
      "path": "4"
    },
    "12581": {
      "fn": "SafeMath.add",
      "offset": [
        2779,
        2784
      ],
      "op": "DUP3",
      "path": "4"
    },
    "12582": {
      "fn": "SafeMath.add",
      "offset": [
        2779,
        2784
      ],
      "op": "ADD",
      "path": "4"
    },
    "12583": {
      "fn": "SafeMath.add",
      "offset": [
        2802,
        2808
      ],
      "op": "DUP4",
      "path": "4",
      "statement": 106
    },
    "12584": {
      "fn": "SafeMath.add",
      "offset": [
        2802,
        2808
      ],
      "op": "DUP2",
      "path": "4"
    },
    "12585": {
      "fn": "SafeMath.add",
      "offset": [
        2802,
        2808
      ],
      "op": "LT",
      "path": "4"
    },
    "12586": {
      "branch": 206,
      "fn": "SafeMath.add",
      "offset": [
        2802,
        2808
      ],
      "op": "ISZERO",
      "path": "4"
    },
    "12587": {
      "fn": "SafeMath.add",
      "offset": [
        2794,
        2840
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x63E"
    },
    "12590": {
      "branch": 206,
      "fn": "SafeMath.add",
      "offset": [
        2794,
        2840
      ],
      "op": "JUMPI",
      "path": "4"
    },
    "12591": {
      "fn": "SafeMath.add",
      "offset": [
        2794,
        2840
      ],
      "op": "PUSH1",
      "path": "4",
      "value": "0x40"
    },
    "12593": {
      "fn": "SafeMath.add",
      "offset": [
        2794,
        2840
      ],
      "op": "MLOAD",
      "path": "4"
    },
    "12594": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "12598": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "12600": {
      "op": "SHL"
    },
    "12601": {
      "fn": "SafeMath.add",
      "offset": [
        2794,
        2840
      ],
      "op": "DUP2",
      "path": "4"
    },
    "12602": {
      "fn": "SafeMath.add",
      "offset": [
        2794,
        2840
      ],
      "op": "MSTORE",
      "path": "4"
    },
    "12603": {
      "fn": "SafeMath.add",
      "offset": [
        2794,
        2840
      ],
      "op": "PUSH1",
      "path": "4",
      "value": "0x4"
    },
    "12605": {
      "fn": "SafeMath.add",
      "offset": [
        2794,
        2840
      ],
      "op": "ADD",
      "path": "4"
    },
    "12606": {
      "fn": "SafeMath.add",
      "offset": [
        2794,
        2840
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x186"
    },
    "12609": {
      "fn": "SafeMath.add",
      "offset": [
        2794,
        2840
      ],
      "op": "SWAP1",
      "path": "4"
    },
    "12610": {
      "fn": "SafeMath.add",
      "offset": [
        2794,
        2840
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x3E88"
    },
    "12613": {
      "fn": "SafeMath.add",
      "jump": "i",
      "offset": [
        2794,
        2840
      ],
      "op": "JUMP",
      "path": "4"
    },
    "12614": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3305,
        3468
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12615": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3369,
        3379
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12616": {
      "branch": 189,
      "fn": "BasicSpell.doRepay",
      "offset": [
        3369,
        3379
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "12617": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3365,
        3464
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BD8"
    },
    "12620": {
      "branch": 189,
      "fn": "BasicSpell.doRepay",
      "offset": [
        3365,
        3464
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "12621": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3389,
        3424
      ],
      "op": "PUSH2",
      "path": "41",
      "statement": 107,
      "value": "0x3176"
    },
    "12624": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3403,
        3408
      ],
      "op": "DUP3",
      "path": "41"
    },
    "12625": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3418,
        3422
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "12658": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3389,
        3402
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x2477"
    },
    "12661": {
      "fn": "BasicSpell.doRepay",
      "jump": "i",
      "offset": [
        3389,
        3424
      ],
      "op": "JUMP",
      "path": "41"
    },
    "12662": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3389,
        3424
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12663": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3457
      ],
      "op": "PUSH1",
      "path": "41",
      "statement": 108,
      "value": "0x40"
    },
    "12665": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3457
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "12666": {
      "op": "PUSH4",
      "value": "0x450CFAF"
    },
    "12671": {
      "op": "PUSH1",
      "value": "0xE3"
    },
    "12673": {
      "op": "SHL"
    },
    "12674": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3457
      ],
      "op": "DUP2",
      "path": "41"
    },
    "12675": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3457
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "12676": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12678": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12680": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "12682": {
      "op": "SHL"
    },
    "12683": {
      "op": "SUB"
    },
    "12684": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3436
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "12717": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3442
      ],
      "op": "AND",
      "path": "41"
    },
    "12718": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3442
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12719": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3442
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0x22867D78"
    },
    "12724": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3442
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12725": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3457
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BA5"
    },
    "12728": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3457
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12729": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3443,
        3448
      ],
      "op": "DUP6",
      "path": "41"
    },
    "12730": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3443,
        3448
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12731": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3450,
        3456
      ],
      "op": "DUP6",
      "path": "41"
    },
    "12732": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3450,
        3456
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12733": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3457
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "12735": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3457
      ],
      "op": "ADD",
      "path": "41"
    },
    "12736": {
      "fn": "BasicSpell.doRepay",
      "offset": [
        3432,
        3457
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3D53"
    },
    "12739": {
      "fn": "BasicSpell.doRepay",
      "jump": "i",
      "offset": [
        3432,
        3457
      ],
      "op": "JUMP",
      "path": "41"
    },
    "12740": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        704,
        879
      ],
      "op": "JUMPDEST",
      "path": "13"
    },
    "12741": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        786,
        872
      ],
      "op": "PUSH2",
      "path": "13",
      "statement": 109,
      "value": "0x19E8"
    },
    "12744": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        806,
        811
      ],
      "op": "DUP4",
      "path": "13"
    },
    "12745": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        836,
        859
      ],
      "op": "PUSH4",
      "path": "13",
      "value": "0xA9059CBB"
    },
    "12750": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        836,
        859
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0xE0"
    },
    "12752": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        836,
        859
      ],
      "op": "SHL",
      "path": "13"
    },
    "12753": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        861,
        863
      ],
      "op": "DUP5",
      "path": "13"
    },
    "12754": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        865,
        870
      ],
      "op": "DUP5",
      "path": "13"
    },
    "12755": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        813,
        871
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x40"
    },
    "12757": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        813,
        871
      ],
      "op": "MLOAD",
      "path": "13"
    },
    "12758": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        813,
        871
      ],
      "op": "PUSH1",
      "path": "13",
      "value": "0x24"
    },
    "12760": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        813,
        871
      ],
      "op": "ADD",
      "path": "13"
    },
    "12761": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        813,
        871
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x19B1"
    },
    "12764": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        813,
        871
      ],
      "op": "SWAP3",
      "path": "13"
    },
    "12765": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        813,
        871
      ],
      "op": "SWAP2",
      "path": "13"
    },
    "12766": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        813,
        871
      ],
      "op": "SWAP1",
      "path": "13"
    },
    "12767": {
      "fn": "SafeERC20.safeTransfer",
      "offset": [
        813,
        871
      ],
      "op": "PUSH2",
      "path": "13",
      "value": "0x3D53"
    },
    "12770": {
      "fn": "SafeERC20.safeTransfer",
      "jump": "i",
      "offset": [
        813,
        871
      ],
      "op": "JUMP",
      "path": "13"
    },
    "12771": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1516,
        1633
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12772": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1560,
        1569
      ],
      "op": "CALLVALUE",
      "path": "41"
    },
    "12773": {
      "branch": 190,
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1560,
        1573
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "12774": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1556,
        1629
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3258"
    },
    "12777": {
      "branch": 190,
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1556,
        1629
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "12778": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1589,
        1593
      ],
      "op": "PUSH32",
      "path": "41",
      "statement": 110,
      "value": "0x0"
    },
    "12811": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12813": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12815": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "12817": {
      "op": "SHL"
    },
    "12818": {
      "op": "SUB"
    },
    "12819": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1602
      ],
      "op": "AND",
      "path": "41"
    },
    "12820": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1602
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0xD0E30DB0"
    },
    "12825": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1610,
        1619
      ],
      "op": "CALLVALUE",
      "path": "41"
    },
    "12826": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "12828": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "12829": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "DUP3",
      "path": "41"
    },
    "12830": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0xFFFFFFFF"
    },
    "12835": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "AND",
      "path": "41"
    },
    "12836": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0xE0"
    },
    "12838": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "SHL",
      "path": "41"
    },
    "12839": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "DUP2",
      "path": "41"
    },
    "12840": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "12841": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "12843": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "ADD",
      "path": "41"
    },
    "12844": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "12846": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x40"
    },
    "12848": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "12849": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12850": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "DUP4",
      "path": "41"
    },
    "12851": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "SUB",
      "path": "41"
    },
    "12852": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "DUP2",
      "path": "41"
    },
    "12853": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "DUP6",
      "path": "41"
    },
    "12854": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "DUP9",
      "path": "41"
    },
    "12855": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12856": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "EXTCODESIZE",
      "path": "41"
    },
    "12857": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "12858": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12859": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "12860": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3244"
    },
    "12863": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "12864": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "12866": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12867": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "REVERT",
      "path": "41"
    },
    "12868": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12869": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "POP",
      "path": "41"
    },
    "12870": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "GAS",
      "path": "41"
    },
    "12871": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "CALL",
      "path": "41"
    },
    "12872": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "12873": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12874": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "12875": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x180B"
    },
    "12878": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "12879": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "12880": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "12882": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12883": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "RETURNDATACOPY",
      "path": "41"
    },
    "12884": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "RETURNDATASIZE",
      "path": "41"
    },
    "12885": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x0"
    },
    "12887": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1583,
        1622
      ],
      "op": "REVERT",
      "path": "41"
    },
    "12888": {
      "fn": "BasicSpell.doTransmitETH",
      "offset": [
        1556,
        1629
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12889": {
      "fn": "BasicSpell.doTransmitETH",
      "jump": "o",
      "offset": [
        1516,
        1633
      ],
      "op": "JUMP",
      "path": "41"
    },
    "12890": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1903,
        2029
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12891": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1970,
        1980
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12892": {
      "branch": 191,
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1970,
        1980
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "12893": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1966,
        2025
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BD8"
    },
    "12896": {
      "branch": 191,
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1966,
        2025
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "12897": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2018
      ],
      "op": "PUSH1",
      "path": "41",
      "statement": 111,
      "value": "0x40"
    },
    "12899": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2018
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "12900": {
      "op": "PUSH4",
      "value": "0x246B5DE1"
    },
    "12905": {
      "op": "PUSH1",
      "value": "0xE1"
    },
    "12907": {
      "op": "SHL"
    },
    "12908": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2018
      ],
      "op": "DUP2",
      "path": "41"
    },
    "12909": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2018
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "12910": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12912": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12914": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "12916": {
      "op": "SHL"
    },
    "12917": {
      "op": "SUB"
    },
    "12918": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        1994
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "12951": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2003
      ],
      "op": "AND",
      "path": "41"
    },
    "12952": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2003
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12953": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2003
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0x48D6BBC2"
    },
    "12958": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2003
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12959": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2018
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BA5"
    },
    "12962": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2018
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12963": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        2004,
        2009
      ],
      "op": "DUP6",
      "path": "41"
    },
    "12964": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        2004,
        2009
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12965": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        2011,
        2017
      ],
      "op": "DUP6",
      "path": "41"
    },
    "12966": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        2011,
        2017
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "12967": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2018
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "12969": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2018
      ],
      "op": "ADD",
      "path": "41"
    },
    "12970": {
      "fn": "BasicSpell.doTransmit",
      "offset": [
        1990,
        2018
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3D53"
    },
    "12973": {
      "fn": "BasicSpell.doTransmit",
      "jump": "i",
      "offset": [
        1990,
        2018
      ],
      "op": "JUMP",
      "path": "41"
    },
    "12974": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        2999,
        3121
      ],
      "op": "JUMPDEST",
      "path": "41"
    },
    "12975": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3064,
        3074
      ],
      "op": "DUP1",
      "path": "41"
    },
    "12976": {
      "branch": 192,
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3064,
        3074
      ],
      "op": "ISZERO",
      "path": "41"
    },
    "12977": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3060,
        3117
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BD8"
    },
    "12980": {
      "branch": 192,
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3060,
        3117
      ],
      "op": "JUMPI",
      "path": "41"
    },
    "12981": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3110
      ],
      "op": "PUSH1",
      "path": "41",
      "statement": 112,
      "value": "0x40"
    },
    "12983": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3110
      ],
      "op": "MLOAD",
      "path": "41"
    },
    "12984": {
      "op": "PUSH4",
      "value": "0x4B8A3529"
    },
    "12989": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "12991": {
      "op": "SHL"
    },
    "12992": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3110
      ],
      "op": "DUP2",
      "path": "41"
    },
    "12993": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3110
      ],
      "op": "MSTORE",
      "path": "41"
    },
    "12994": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12996": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "12998": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "13000": {
      "op": "SHL"
    },
    "13001": {
      "op": "SUB"
    },
    "13002": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3088
      ],
      "op": "PUSH32",
      "path": "41",
      "value": "0x0"
    },
    "13035": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3095
      ],
      "op": "AND",
      "path": "41"
    },
    "13036": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3095
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "13037": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3095
      ],
      "op": "PUSH4",
      "path": "41",
      "value": "0x4B8A3529"
    },
    "13042": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3095
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "13043": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3110
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x1BA5"
    },
    "13046": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3110
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "13047": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3096,
        3101
      ],
      "op": "DUP6",
      "path": "41"
    },
    "13048": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3096,
        3101
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "13049": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3103,
        3109
      ],
      "op": "DUP6",
      "path": "41"
    },
    "13050": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3103,
        3109
      ],
      "op": "SWAP1",
      "path": "41"
    },
    "13051": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3110
      ],
      "op": "PUSH1",
      "path": "41",
      "value": "0x4"
    },
    "13053": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3110
      ],
      "op": "ADD",
      "path": "41"
    },
    "13054": {
      "fn": "BasicSpell.doBorrow",
      "offset": [
        3084,
        3110
      ],
      "op": "PUSH2",
      "path": "41",
      "value": "0x3D53"
    },
    "13057": {
      "fn": "BasicSpell.doBorrow",
      "jump": "i",
      "offset": [
        3084,
        3110
      ],
      "op": "JUMP",
      "path": "41"
    },
    "13058": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        1983,
        2360
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13059": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2094,
        2106
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "13061": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2094,
        2106
      ],
      "op": "DUP1",
      "path": "45"
    },
    "13062": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2153,
        2167
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x330F"
    },
    "13065": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2153,
        2157
      ],
      "op": "DUP6",
      "path": "45"
    },
    "13066": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2162,
        2166
      ],
      "op": "DUP6",
      "path": "45"
    },
    "13067": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2153,
        2161
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x338A"
    },
    "13070": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "jump": "i",
      "offset": [
        2153,
        2167
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13071": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2153,
        2167
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13072": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2135,
        2149
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3319"
    },
    "13075": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2135,
        2139
      ],
      "op": "DUP8",
      "path": "45"
    },
    "13076": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2144,
        2148
      ],
      "op": "DUP6",
      "path": "45"
    },
    "13077": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2135,
        2143
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x338A"
    },
    "13080": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "jump": "i",
      "offset": [
        2135,
        2149
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13081": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2135,
        2149
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13082": {
      "branch": 175,
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2135,
        2167
      ],
      "op": "LT",
      "path": "45"
    },
    "13083": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2131,
        2356
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3335"
    },
    "13086": {
      "branch": 175,
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2131,
        2356
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "13087": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2187,
        2227
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 113,
      "value": "0x332A"
    },
    "13090": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2204,
        2208
      ],
      "op": "DUP7",
      "path": "45"
    },
    "13091": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2210,
        2214
      ],
      "op": "DUP7",
      "path": "45"
    },
    "13092": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2216,
        2220
      ],
      "op": "DUP7",
      "path": "45"
    },
    "13093": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2222,
        2226
      ],
      "op": "DUP7",
      "path": "45"
    },
    "13094": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2187,
        2203
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x33C4"
    },
    "13097": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "jump": "i",
      "offset": [
        2187,
        2227
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13098": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2187,
        2227
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13099": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2177,
        2227
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "13100": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2177,
        2227
      ],
      "op": "POP",
      "path": "45"
    },
    "13101": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2248,
        2253
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 114,
      "value": "0x0"
    },
    "13103": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2235,
        2253
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13104": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2235,
        2253
      ],
      "op": "POP",
      "path": "45"
    },
    "13105": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2131,
        2356
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3348"
    },
    "13108": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2131,
        2356
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13109": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2131,
        2356
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13110": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2284,
        2324
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 115,
      "value": "0x3341"
    },
    "13113": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2301,
        2305
      ],
      "op": "DUP6",
      "path": "45"
    },
    "13114": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2307,
        2311
      ],
      "op": "DUP8",
      "path": "45"
    },
    "13115": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2313,
        2317
      ],
      "op": "DUP6",
      "path": "45"
    },
    "13116": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2319,
        2323
      ],
      "op": "DUP8",
      "path": "45"
    },
    "13117": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2284,
        2300
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x33C4"
    },
    "13120": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "jump": "i",
      "offset": [
        2284,
        2324
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13121": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2284,
        2324
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13122": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2274,
        2324
      ],
      "op": "SWAP2",
      "path": "45"
    },
    "13123": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2274,
        2324
      ],
      "op": "POP",
      "path": "45"
    },
    "13124": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2345,
        2349
      ],
      "op": "PUSH1",
      "path": "45",
      "statement": 116,
      "value": "0x1"
    },
    "13126": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2332,
        2349
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13127": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2332,
        2349
      ],
      "op": "POP",
      "path": "45"
    },
    "13128": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        2131,
        2356
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13129": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        1983,
        2360
      ],
      "op": "SWAP5",
      "path": "45"
    },
    "13130": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        1983,
        2360
      ],
      "op": "POP",
      "path": "45"
    },
    "13131": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        1983,
        2360
      ],
      "op": "SWAP5",
      "path": "45"
    },
    "13132": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        1983,
        2360
      ],
      "op": "SWAP3",
      "path": "45"
    },
    "13133": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        1983,
        2360
      ],
      "op": "POP",
      "path": "45"
    },
    "13134": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        1983,
        2360
      ],
      "op": "POP",
      "path": "45"
    },
    "13135": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "offset": [
        1983,
        2360
      ],
      "op": "POP",
      "path": "45"
    },
    "13136": {
      "fn": "UniswapV2SpellV1.optimalDeposit",
      "jump": "o",
      "offset": [
        1983,
        2360
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13137": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7091,
        7816
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "13138": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7206,
        7218
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x60"
    },
    "13140": {
      "branch": 179,
      "fn": "Address._verifyCallResult",
      "offset": [
        7234,
        7241
      ],
      "op": "DUP4",
      "path": "14"
    },
    "13141": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7230,
        7810
      ],
      "op": "ISZERO",
      "path": "14"
    },
    "13142": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7230,
        7810
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x3360"
    },
    "13145": {
      "branch": 179,
      "fn": "Address._verifyCallResult",
      "offset": [
        7230,
        7810
      ],
      "op": "JUMPI",
      "path": "14"
    },
    "13146": {
      "op": "POP"
    },
    "13147": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7264,
        7274
      ],
      "op": "DUP2",
      "path": "14",
      "statement": 117
    },
    "13148": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7257,
        7274
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x1A05"
    },
    "13151": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7257,
        7274
      ],
      "op": "JUMP",
      "path": "14"
    },
    "13152": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7230,
        7810
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "13153": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7375,
        7392
      ],
      "op": "DUP3",
      "path": "14"
    },
    "13154": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7375,
        7392
      ],
      "op": "MLOAD",
      "path": "14"
    },
    "13155": {
      "branch": 180,
      "fn": "Address._verifyCallResult",
      "offset": [
        7375,
        7396
      ],
      "op": "ISZERO",
      "path": "14"
    },
    "13156": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7371,
        7800
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x3370"
    },
    "13159": {
      "branch": 180,
      "fn": "Address._verifyCallResult",
      "offset": [
        7371,
        7800
      ],
      "op": "JUMPI",
      "path": "14"
    },
    "13160": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7633,
        7643
      ],
      "op": "DUP3",
      "path": "14"
    },
    "13161": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7627,
        7644
      ],
      "op": "MLOAD",
      "path": "14"
    },
    "13162": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7693,
        7708
      ],
      "op": "DUP1",
      "path": "14"
    },
    "13163": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7680,
        7690
      ],
      "op": "DUP5",
      "path": "14"
    },
    "13164": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7676,
        7678
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x20"
    },
    "13166": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7672,
        7691
      ],
      "op": "ADD",
      "path": "14"
    },
    "13167": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7665,
        7709
      ],
      "op": "REVERT",
      "path": "14"
    },
    "13168": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7582,
        7727
      ],
      "op": "JUMPDEST",
      "path": "14"
    },
    "13169": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7772,
        7784
      ],
      "op": "DUP2",
      "path": "14",
      "statement": 118
    },
    "13170": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7765,
        7785
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x40"
    },
    "13172": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7765,
        7785
      ],
      "op": "MLOAD",
      "path": "14"
    },
    "13173": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "13177": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "13179": {
      "op": "SHL"
    },
    "13180": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7765,
        7785
      ],
      "op": "DUP2",
      "path": "14"
    },
    "13181": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7765,
        7785
      ],
      "op": "MSTORE",
      "path": "14"
    },
    "13182": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7765,
        7785
      ],
      "op": "PUSH1",
      "path": "14",
      "value": "0x4"
    },
    "13184": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7765,
        7785
      ],
      "op": "ADD",
      "path": "14"
    },
    "13185": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7765,
        7785
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x186"
    },
    "13188": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7765,
        7785
      ],
      "op": "SWAP2",
      "path": "14"
    },
    "13189": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7765,
        7785
      ],
      "op": "SWAP1",
      "path": "14"
    },
    "13190": {
      "fn": "Address._verifyCallResult",
      "offset": [
        7765,
        7785
      ],
      "op": "PUSH2",
      "path": "14",
      "value": "0x3DAD"
    },
    "13193": {
      "fn": "Address._verifyCallResult",
      "jump": "i",
      "offset": [
        7765,
        7785
      ],
      "op": "JUMP",
      "path": "14"
    },
    "13194": {
      "fn": "SafeMath.mul",
      "offset": [
        3538,
        3753
      ],
      "op": "JUMPDEST",
      "path": "4"
    },
    "13195": {
      "fn": "SafeMath.mul",
      "offset": [
        3596,
        3603
      ],
      "op": "PUSH1",
      "path": "4",
      "value": "0x0"
    },
    "13197": {
      "branch": 207,
      "fn": "SafeMath.mul",
      "offset": [
        3619,
        3625
      ],
      "op": "DUP3",
      "path": "4"
    },
    "13198": {
      "fn": "SafeMath.mul",
      "offset": [
        3615,
        3635
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x3399"
    },
    "13201": {
      "branch": 207,
      "fn": "SafeMath.mul",
      "offset": [
        3615,
        3635
      ],
      "op": "JUMPI",
      "path": "4"
    },
    "13202": {
      "op": "POP"
    },
    "13203": {
      "fn": "SafeMath.mul",
      "offset": [
        3634,
        3635
      ],
      "op": "PUSH1",
      "path": "4",
      "statement": 119,
      "value": "0x0"
    },
    "13205": {
      "fn": "SafeMath.mul",
      "offset": [
        3627,
        3635
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x641"
    },
    "13208": {
      "fn": "SafeMath.mul",
      "offset": [
        3627,
        3635
      ],
      "op": "JUMP",
      "path": "4"
    },
    "13209": {
      "fn": "SafeMath.mul",
      "offset": [
        3615,
        3635
      ],
      "op": "JUMPDEST",
      "path": "4"
    },
    "13210": {
      "fn": "SafeMath.mul",
      "offset": [
        3657,
        3662
      ],
      "op": "DUP3",
      "path": "4"
    },
    "13211": {
      "fn": "SafeMath.mul",
      "offset": [
        3657,
        3662
      ],
      "op": "DUP3",
      "path": "4"
    },
    "13212": {
      "fn": "SafeMath.mul",
      "offset": [
        3657,
        3662
      ],
      "op": "MUL",
      "path": "4"
    },
    "13213": {
      "fn": "SafeMath.mul",
      "offset": [
        3661,
        3662
      ],
      "op": "DUP3",
      "path": "4"
    },
    "13214": {
      "fn": "SafeMath.mul",
      "offset": [
        3657,
        3658
      ],
      "op": "DUP5",
      "path": "4"
    },
    "13215": {
      "fn": "SafeMath.mul",
      "offset": [
        3657,
        3662
      ],
      "op": "DUP3",
      "path": "4"
    },
    "13216": {
      "fn": "SafeMath.mul",
      "offset": [
        3657,
        3658
      ],
      "op": "DUP2",
      "path": "4"
    },
    "13217": {
      "fn": "SafeMath.mul",
      "offset": [
        3680,
        3685
      ],
      "op": "PUSH2",
      "path": "4",
      "statement": 120,
      "value": "0x33A6"
    },
    "13220": {
      "fn": "SafeMath.mul",
      "offset": [
        3680,
        3685
      ],
      "op": "JUMPI",
      "path": "4"
    },
    "13221": {
      "dev": "Division by zero",
      "fn": "SafeMath.mul",
      "offset": [
        3680,
        3685
      ],
      "op": "INVALID",
      "path": "4"
    },
    "13222": {
      "fn": "SafeMath.mul",
      "offset": [
        3680,
        3685
      ],
      "op": "JUMPDEST",
      "path": "4"
    },
    "13223": {
      "fn": "SafeMath.mul",
      "offset": [
        3680,
        3685
      ],
      "op": "DIV",
      "path": "4"
    },
    "13224": {
      "branch": 208,
      "fn": "SafeMath.mul",
      "offset": [
        3680,
        3690
      ],
      "op": "EQ",
      "path": "4"
    },
    "13225": {
      "fn": "SafeMath.mul",
      "offset": [
        3672,
        3728
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x63E"
    },
    "13228": {
      "branch": 208,
      "fn": "SafeMath.mul",
      "offset": [
        3672,
        3728
      ],
      "op": "JUMPI",
      "path": "4"
    },
    "13229": {
      "fn": "SafeMath.mul",
      "offset": [
        3672,
        3728
      ],
      "op": "PUSH1",
      "path": "4",
      "value": "0x40"
    },
    "13231": {
      "fn": "SafeMath.mul",
      "offset": [
        3672,
        3728
      ],
      "op": "MLOAD",
      "path": "4"
    },
    "13232": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "13236": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "13238": {
      "op": "SHL"
    },
    "13239": {
      "fn": "SafeMath.mul",
      "offset": [
        3672,
        3728
      ],
      "op": "DUP2",
      "path": "4"
    },
    "13240": {
      "fn": "SafeMath.mul",
      "offset": [
        3672,
        3728
      ],
      "op": "MSTORE",
      "path": "4"
    },
    "13241": {
      "fn": "SafeMath.mul",
      "offset": [
        3672,
        3728
      ],
      "op": "PUSH1",
      "path": "4",
      "value": "0x4"
    },
    "13243": {
      "fn": "SafeMath.mul",
      "offset": [
        3672,
        3728
      ],
      "op": "ADD",
      "path": "4"
    },
    "13244": {
      "fn": "SafeMath.mul",
      "offset": [
        3672,
        3728
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x186"
    },
    "13247": {
      "fn": "SafeMath.mul",
      "offset": [
        3672,
        3728
      ],
      "op": "SWAP1",
      "path": "4"
    },
    "13248": {
      "fn": "SafeMath.mul",
      "offset": [
        3672,
        3728
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x40AC"
    },
    "13251": {
      "fn": "SafeMath.mul",
      "jump": "i",
      "offset": [
        3672,
        3728
      ],
      "op": "JUMP",
      "path": "4"
    },
    "13252": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2668,
        3193
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13253": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2781,
        2785
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "13255": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2819,
        2833
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 121,
      "value": "0x33D0"
    },
    "13258": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2819,
        2823
      ],
      "op": "DUP5",
      "path": "45"
    },
    "13259": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2828,
        2832
      ],
      "op": "DUP5",
      "path": "45"
    },
    "13260": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2819,
        2827
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x338A"
    },
    "13263": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        2819,
        2833
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13264": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2819,
        2833
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13265": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2801,
        2815
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x33DA"
    },
    "13268": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2801,
        2805
      ],
      "op": "DUP7",
      "path": "45"
    },
    "13269": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2810,
        2814
      ],
      "op": "DUP5",
      "path": "45"
    },
    "13270": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2801,
        2809
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x338A"
    },
    "13273": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        2801,
        2815
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13274": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2801,
        2815
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13275": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2801,
        2833
      ],
      "op": "LT",
      "path": "45"
    },
    "13276": {
      "branch": 176,
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2801,
        2833
      ],
      "op": "ISZERO",
      "path": "45"
    },
    "13277": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2793,
        2846
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x33F8"
    },
    "13280": {
      "branch": 176,
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2793,
        2846
      ],
      "op": "JUMPI",
      "path": "45"
    },
    "13281": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2793,
        2846
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x40"
    },
    "13283": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2793,
        2846
      ],
      "op": "MLOAD",
      "path": "45"
    },
    "13284": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "13288": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "13290": {
      "op": "SHL"
    },
    "13291": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2793,
        2846
      ],
      "op": "DUP2",
      "path": "45"
    },
    "13292": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2793,
        2846
      ],
      "op": "MSTORE",
      "path": "45"
    },
    "13293": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2793,
        2846
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "13295": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2793,
        2846
      ],
      "op": "ADD",
      "path": "45"
    },
    "13296": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2793,
        2846
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x186"
    },
    "13299": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2793,
        2846
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13300": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2793,
        2846
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x40ED"
    },
    "13303": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        2793,
        2846
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13304": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2793,
        2846
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13305": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2861,
        2864
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3E5"
    },
    "13308": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2852,
        2858
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "13310": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2879,
        2899
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3409"
    },
    "13313": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2884,
        2888
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x7CD"
    },
    "13316": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2894,
        2898
      ],
      "op": "DUP7",
      "path": "45"
    },
    "13317": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2879,
        2893
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x338A"
    },
    "13320": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        2879,
        2899
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13321": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2879,
        2899
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13322": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2870,
        2899
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13323": {
      "op": "POP"
    },
    "13324": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2905,
        2912
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "13326": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2915,
        2951
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3424"
    },
    "13329": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2936,
        2950
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x341A"
    },
    "13332": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2936,
        2940
      ],
      "op": "DUP9",
      "path": "45"
    },
    "13333": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2945,
        2949
      ],
      "op": "DUP9",
      "path": "45"
    },
    "13334": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2936,
        2944
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x338A"
    },
    "13337": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        2936,
        2950
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13338": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2936,
        2950
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13339": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2916,
        2930
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x1F45"
    },
    "13342": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2916,
        2920
      ],
      "op": "DUP11",
      "path": "45"
    },
    "13343": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2925,
        2929
      ],
      "op": "DUP9",
      "path": "45"
    },
    "13344": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2916,
        2924
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x338A"
    },
    "13347": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        2916,
        2930
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13348": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2915,
        2951
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13349": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2905,
        2951
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13350": {
      "op": "POP"
    },
    "13351": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2957,
        2963
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "13353": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2966,
        3008
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3451"
    },
    "13356": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3003,
        3007
      ],
      "op": "DUP8",
      "path": "45"
    },
    "13357": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2966,
        2998
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x344B"
    },
    "13360": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2983,
        2997
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3439"
    },
    "13363": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2983,
        2987
      ],
      "op": "DUP12",
      "path": "45"
    },
    "13364": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2992,
        2996
      ],
      "op": "DUP11",
      "path": "45"
    },
    "13365": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2983,
        2991
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3121"
    },
    "13368": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        2983,
        2997
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13369": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2983,
        2997
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13370": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2966,
        2978
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3445"
    },
    "13373": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2966,
        2968
      ],
      "op": "DUP7",
      "path": "45"
    },
    "13374": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2973,
        2977
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3E8"
    },
    "13377": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2966,
        2972
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x338A"
    },
    "13380": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        2966,
        2978
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13381": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2966,
        2978
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13382": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2966,
        2982
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13383": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2966,
        2982
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x34BE"
    },
    "13386": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        2966,
        2998
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13387": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2966,
        2998
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13388": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2966,
        3002
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13389": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2966,
        3002
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x338A"
    },
    "13392": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        2966,
        3008
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13393": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2966,
        3008
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13394": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2957,
        3008
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13395": {
      "op": "POP"
    },
    "13396": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3014,
        3020
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "13398": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3023,
        3038
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3464"
    },
    "13401": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3036,
        3037
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x4"
    },
    "13403": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3023,
        3031
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x344B"
    },
    "13406": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3023,
        3024
      ],
      "op": "DUP8",
      "path": "45"
    },
    "13407": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2957,
        3008
      ],
      "op": "DUP6",
      "path": "45"
    },
    "13408": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3023,
        3028
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x338A"
    },
    "13411": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        3023,
        3031
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13412": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3023,
        3038
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13413": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3014,
        3038
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13414": {
      "op": "POP"
    },
    "13415": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3044,
        3050
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "13417": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3053,
        3085
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3484"
    },
    "13420": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3069,
        3084
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x347F"
    },
    "13423": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3014,
        3038
      ],
      "op": "DUP4",
      "path": "45"
    },
    "13424": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3069,
        3077
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3479"
    },
    "13427": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3075,
        3076
      ],
      "op": "DUP9",
      "path": "45"
    },
    "13428": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3075,
        3076
      ],
      "op": "DUP1",
      "path": "45"
    },
    "13429": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3069,
        3074
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x338A"
    },
    "13432": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        3069,
        3077
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13433": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3069,
        3077
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13434": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3069,
        3081
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13435": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3069,
        3081
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3121"
    },
    "13438": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        3069,
        3084
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13439": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3069,
        3084
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13440": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3053,
        3068
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x34F0"
    },
    "13443": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        3053,
        3085
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13444": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3053,
        3085
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13445": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3044,
        3085
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13446": {
      "op": "POP"
    },
    "13447": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3091,
        3105
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "13449": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3108,
        3116
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x3492"
    },
    "13452": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3044,
        3085
      ],
      "op": "DUP3",
      "path": "45"
    },
    "13453": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3114,
        3115
      ],
      "op": "DUP8",
      "path": "45"
    },
    "13454": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3108,
        3113
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x30F9"
    },
    "13457": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        3108,
        3116
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13458": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3108,
        3116
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13459": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3091,
        3116
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13460": {
      "op": "POP"
    },
    "13461": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3122,
        3138
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x0"
    },
    "13463": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3141,
        3149
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x34A1"
    },
    "13466": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3141,
        3142
      ],
      "op": "DUP9",
      "path": "45"
    },
    "13467": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3147,
        3148
      ],
      "op": "PUSH1",
      "path": "45",
      "value": "0x2"
    },
    "13469": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3141,
        3146
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x338A"
    },
    "13472": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        3141,
        3149
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13473": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3141,
        3149
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13474": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3122,
        3149
      ],
      "op": "SWAP1",
      "path": "45"
    },
    "13475": {
      "op": "POP"
    },
    "13476": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3162,
        3188
      ],
      "op": "PUSH2",
      "path": "45",
      "statement": 122,
      "value": "0x34AD"
    },
    "13479": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3162,
        3171
      ],
      "op": "DUP3",
      "path": "45"
    },
    "13480": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3122,
        3149
      ],
      "op": "DUP3",
      "path": "45"
    },
    "13481": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3162,
        3175
      ],
      "op": "PUSH2",
      "path": "45",
      "value": "0x34BE"
    },
    "13484": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "i",
      "offset": [
        3162,
        3188
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13485": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3162,
        3188
      ],
      "op": "JUMPDEST",
      "path": "45"
    },
    "13486": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        3155,
        3188
      ],
      "op": "SWAP14",
      "path": "45"
    },
    "13487": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "offset": [
        2668,
        3193
      ],
      "op": "SWAP13",
      "path": "45"
    },
    "13488": {
      "op": "POP"
    },
    "13489": {
      "op": "POP"
    },
    "13490": {
      "op": "POP"
    },
    "13491": {
      "op": "POP"
    },
    "13492": {
      "op": "POP"
    },
    "13493": {
      "op": "POP"
    },
    "13494": {
      "op": "POP"
    },
    "13495": {
      "op": "POP"
    },
    "13496": {
      "op": "POP"
    },
    "13497": {
      "op": "POP"
    },
    "13498": {
      "op": "POP"
    },
    "13499": {
      "op": "POP"
    },
    "13500": {
      "op": "POP"
    },
    "13501": {
      "fn": "UniswapV2SpellV1._optimalDepositA",
      "jump": "o",
      "offset": [
        2668,
        3193
      ],
      "op": "JUMP",
      "path": "45"
    },
    "13502": {
      "fn": "SafeMath.div",
      "offset": [
        4217,
        4367
      ],
      "op": "JUMPDEST",
      "path": "4"
    },
    "13503": {
      "fn": "SafeMath.div",
      "offset": [
        4275,
        4282
      ],
      "op": "PUSH1",
      "path": "4",
      "value": "0x0"
    },
    "13505": {
      "fn": "SafeMath.div",
      "offset": [
        4306,
        4307
      ],
      "op": "DUP1",
      "path": "4",
      "statement": 123
    },
    "13506": {
      "fn": "SafeMath.div",
      "offset": [
        4302,
        4303
      ],
      "op": "DUP3",
      "path": "4"
    },
    "13507": {
      "branch": 209,
      "fn": "SafeMath.div",
      "offset": [
        4302,
        4307
      ],
      "op": "GT",
      "path": "4"
    },
    "13508": {
      "fn": "SafeMath.div",
      "offset": [
        4294,
        4338
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x34DF"
    },
    "13511": {
      "branch": 209,
      "fn": "SafeMath.div",
      "offset": [
        4294,
        4338
      ],
      "op": "JUMPI",
      "path": "4"
    },
    "13512": {
      "fn": "SafeMath.div",
      "offset": [
        4294,
        4338
      ],
      "op": "PUSH1",
      "path": "4",
      "value": "0x40"
    },
    "13514": {
      "fn": "SafeMath.div",
      "offset": [
        4294,
        4338
      ],
      "op": "MLOAD",
      "path": "4"
    },
    "13515": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "13519": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "13521": {
      "op": "SHL"
    },
    "13522": {
      "fn": "SafeMath.div",
      "offset": [
        4294,
        4338
      ],
      "op": "DUP2",
      "path": "4"
    },
    "13523": {
      "fn": "SafeMath.div",
      "offset": [
        4294,
        4338
      ],
      "op": "MSTORE",
      "path": "4"
    },
    "13524": {
      "fn": "SafeMath.div",
      "offset": [
        4294,
        4338
      ],
      "op": "PUSH1",
      "path": "4",
      "value": "0x4"
    },
    "13526": {
      "fn": "SafeMath.div",
      "offset": [
        4294,
        4338
      ],
      "op": "ADD",
      "path": "4"
    },
    "13527": {
      "fn": "SafeMath.div",
      "offset": [
        4294,
        4338
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x186"
    },
    "13530": {
      "fn": "SafeMath.div",
      "offset": [
        4294,
        4338
      ],
      "op": "SWAP1",
      "path": "4"
    },
    "13531": {
      "fn": "SafeMath.div",
      "offset": [
        4294,
        4338
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x3F73"
    },
    "13534": {
      "fn": "SafeMath.div",
      "jump": "i",
      "offset": [
        4294,
        4338
      ],
      "op": "JUMP",
      "path": "4"
    },
    "13535": {
      "fn": "SafeMath.div",
      "offset": [
        4294,
        4338
      ],
      "op": "JUMPDEST",
      "path": "4"
    },
    "13536": {
      "fn": "SafeMath.div",
      "offset": [
        4359,
        4360
      ],
      "op": "DUP2",
      "path": "4",
      "statement": 124
    },
    "13537": {
      "fn": "SafeMath.div",
      "offset": [
        4355,
        4356
      ],
      "op": "DUP4",
      "path": "4"
    },
    "13538": {
      "fn": "SafeMath.div",
      "offset": [
        4355,
        4360
      ],
      "op": "DUP2",
      "path": "4"
    },
    "13539": {
      "fn": "SafeMath.div",
      "offset": [
        4355,
        4360
      ],
      "op": "PUSH2",
      "path": "4",
      "value": "0x34E8"
    },
    "13542": {
      "fn": "SafeMath.div",
      "offset": [
        4355,
        4360
      ],
      "op": "JUMPI",
      "path": "4"
    },
    "13543": {
      "dev": "Division by zero",
      "fn": "SafeMath.div",
      "offset": [
        4355,
        4360
      ],
      "op": "INVALID",
      "path": "4"
    },
    "13544": {
      "fn": "SafeMath.div",
      "offset": [
        4355,
        4360
      ],
      "op": "JUMPDEST",
      "path": "4"
    },
    "13545": {
      "fn": "SafeMath.div",
      "offset": [
        4355,
        4360
      ],
      "op": "DIV",
      "path": "4"
    },
    "13546": {
      "fn": "SafeMath.div",
      "offset": [
        4355,
        4360
      ],
      "op": "SWAP4",
      "path": "4"
    },
    "13547": {
      "fn": "SafeMath.div",
      "offset": [
        4217,
        4367
      ],
      "op": "SWAP3",
      "path": "4"
    },
    "13548": {
      "op": "POP"
    },
    "13549": {
      "op": "POP"
    },
    "13550": {
      "op": "POP"
    },
    "13551": {
      "fn": "SafeMath.div",
      "jump": "o",
      "offset": [
        4217,
        4367
      ],
      "op": "JUMP",
      "path": "4"
    },
    "13552": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        753,
        1602
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13553": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        798,
        802
      ],
      "op": "PUSH1",
      "path": "51",
      "value": "0x0"
    },
    "13555": {
      "branch": 194,
      "fn": "HomoraMath.sqrt",
      "offset": [
        814,
        820
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13556": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        810,
        830
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x34FF"
    },
    "13559": {
      "branch": 194,
      "fn": "HomoraMath.sqrt",
      "offset": [
        810,
        830
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13560": {
      "op": "POP"
    },
    "13561": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        829,
        830
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 125,
      "value": "0x0"
    },
    "13563": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        822,
        830
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x432"
    },
    "13566": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        822,
        830
      ],
      "op": "JUMP",
      "path": "51"
    },
    "13567": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        810,
        830
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13568": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        846,
        847
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13569": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        862,
        863
      ],
      "op": "PUSH1",
      "path": "51",
      "value": "0x1"
    },
    "13571": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "13573": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "13575": {
      "op": "SHL"
    },
    "13576": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        874,
        915
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13577": {
      "branch": 195,
      "fn": "HomoraMath.sqrt",
      "offset": [
        874,
        915
      ],
      "op": "LT",
      "path": "51"
    },
    "13578": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        870,
        958
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x3518"
    },
    "13581": {
      "branch": 195,
      "fn": "HomoraMath.sqrt",
      "offset": [
        870,
        958
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13582": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        932,
        935
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 126,
      "value": "0x80"
    },
    "13584": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        925,
        935
      ],
      "op": "SWAP2",
      "path": "51"
    },
    "13585": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        925,
        935
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13586": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        925,
        935
      ],
      "op": "SWAP2",
      "path": "51"
    },
    "13587": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        925,
        935
      ],
      "op": "SHR",
      "path": "51"
    },
    "13588": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        925,
        935
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13589": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        949,
        951
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 127,
      "value": "0x40"
    },
    "13591": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        943,
        951
      ],
      "op": "SHL",
      "path": "51"
    },
    "13592": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        870,
        958
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13593": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        974,
        993
      ],
      "op": "PUSH9",
      "path": "51",
      "value": "0x10000000000000000"
    },
    "13603": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        968,
        970
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13604": {
      "branch": 196,
      "fn": "HomoraMath.sqrt",
      "offset": [
        968,
        993
      ],
      "op": "LT",
      "path": "51"
    },
    "13605": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        964,
        1035
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x3533"
    },
    "13608": {
      "branch": 196,
      "fn": "HomoraMath.sqrt",
      "offset": [
        964,
        1035
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13609": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1010,
        1012
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 128,
      "value": "0x40"
    },
    "13611": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1003,
        1012
      ],
      "op": "SWAP2",
      "path": "51"
    },
    "13612": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1003,
        1012
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13613": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1003,
        1012
      ],
      "op": "SWAP2",
      "path": "51"
    },
    "13614": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1003,
        1012
      ],
      "op": "SHR",
      "path": "51"
    },
    "13615": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1003,
        1012
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13616": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1026,
        1028
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 129,
      "value": "0x20"
    },
    "13618": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1020,
        1028
      ],
      "op": "SHL",
      "path": "51"
    },
    "13619": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        964,
        1035
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13620": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1050,
        1061
      ],
      "op": "PUSH5",
      "path": "51",
      "value": "0x100000000"
    },
    "13626": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1044,
        1046
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13627": {
      "branch": 197,
      "fn": "HomoraMath.sqrt",
      "offset": [
        1044,
        1061
      ],
      "op": "LT",
      "path": "51"
    },
    "13628": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1040,
        1103
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x354A"
    },
    "13631": {
      "branch": 197,
      "fn": "HomoraMath.sqrt",
      "offset": [
        1040,
        1103
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13632": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1078,
        1080
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 130,
      "value": "0x20"
    },
    "13634": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1071,
        1080
      ],
      "op": "SWAP2",
      "path": "51"
    },
    "13635": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1071,
        1080
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13636": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1071,
        1080
      ],
      "op": "SWAP2",
      "path": "51"
    },
    "13637": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1071,
        1080
      ],
      "op": "SHR",
      "path": "51"
    },
    "13638": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1071,
        1080
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13639": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1094,
        1096
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 131,
      "value": "0x10"
    },
    "13641": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1088,
        1096
      ],
      "op": "SHL",
      "path": "51"
    },
    "13642": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1040,
        1103
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13643": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1118,
        1125
      ],
      "op": "PUSH3",
      "path": "51",
      "value": "0x10000"
    },
    "13647": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1112,
        1114
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13648": {
      "branch": 198,
      "fn": "HomoraMath.sqrt",
      "offset": [
        1112,
        1125
      ],
      "op": "LT",
      "path": "51"
    },
    "13649": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1108,
        1166
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x355F"
    },
    "13652": {
      "branch": 198,
      "fn": "HomoraMath.sqrt",
      "offset": [
        1108,
        1166
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13653": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1142,
        1144
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 132,
      "value": "0x10"
    },
    "13655": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1135,
        1144
      ],
      "op": "SWAP2",
      "path": "51"
    },
    "13656": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1135,
        1144
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13657": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1135,
        1144
      ],
      "op": "SWAP2",
      "path": "51"
    },
    "13658": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1135,
        1144
      ],
      "op": "SHR",
      "path": "51"
    },
    "13659": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1135,
        1144
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13660": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1158,
        1159
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 133,
      "value": "0x8"
    },
    "13662": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1152,
        1159
      ],
      "op": "SHL",
      "path": "51"
    },
    "13663": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1108,
        1166
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13664": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1181,
        1186
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x100"
    },
    "13667": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1175,
        1177
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13668": {
      "branch": 199,
      "fn": "HomoraMath.sqrt",
      "offset": [
        1175,
        1186
      ],
      "op": "LT",
      "path": "51"
    },
    "13669": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1171,
        1226
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x3573"
    },
    "13672": {
      "branch": 199,
      "fn": "HomoraMath.sqrt",
      "offset": [
        1171,
        1226
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13673": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1203,
        1204
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 134,
      "value": "0x8"
    },
    "13675": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1196,
        1204
      ],
      "op": "SWAP2",
      "path": "51"
    },
    "13676": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1196,
        1204
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13677": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1196,
        1204
      ],
      "op": "SWAP2",
      "path": "51"
    },
    "13678": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1196,
        1204
      ],
      "op": "SHR",
      "path": "51"
    },
    "13679": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1196,
        1204
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13680": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1218,
        1219
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 135,
      "value": "0x4"
    },
    "13682": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1212,
        1219
      ],
      "op": "SHL",
      "path": "51"
    },
    "13683": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1171,
        1226
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13684": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1241,
        1245
      ],
      "op": "PUSH1",
      "path": "51",
      "value": "0x10"
    },
    "13686": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1235,
        1237
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13687": {
      "branch": 200,
      "fn": "HomoraMath.sqrt",
      "offset": [
        1235,
        1245
      ],
      "op": "LT",
      "path": "51"
    },
    "13688": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1231,
        1285
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x3586"
    },
    "13691": {
      "branch": 200,
      "fn": "HomoraMath.sqrt",
      "offset": [
        1231,
        1285
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13692": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1262,
        1263
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 136,
      "value": "0x4"
    },
    "13694": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1255,
        1263
      ],
      "op": "SWAP2",
      "path": "51"
    },
    "13695": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1255,
        1263
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13696": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1255,
        1263
      ],
      "op": "SWAP2",
      "path": "51"
    },
    "13697": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1255,
        1263
      ],
      "op": "SHR",
      "path": "51"
    },
    "13698": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1255,
        1263
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13699": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1277,
        1278
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 137,
      "value": "0x2"
    },
    "13701": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1271,
        1278
      ],
      "op": "SHL",
      "path": "51"
    },
    "13702": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1231,
        1285
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13703": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1300,
        1303
      ],
      "op": "PUSH1",
      "path": "51",
      "value": "0x8"
    },
    "13705": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1294,
        1296
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13706": {
      "branch": 201,
      "fn": "HomoraMath.sqrt",
      "offset": [
        1294,
        1303
      ],
      "op": "LT",
      "path": "51"
    },
    "13707": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1290,
        1327
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x3592"
    },
    "13710": {
      "branch": 201,
      "fn": "HomoraMath.sqrt",
      "offset": [
        1290,
        1327
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13711": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1319,
        1320
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 138,
      "value": "0x1"
    },
    "13713": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1313,
        1320
      ],
      "op": "SHL",
      "path": "51"
    },
    "13714": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1290,
        1327
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13715": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1352,
        1353
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 139,
      "value": "0x1"
    },
    "13717": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1346,
        1347
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13718": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1342,
        1343
      ],
      "op": "DUP6",
      "path": "51"
    },
    "13719": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1342,
        1347
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13720": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1342,
        1347
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x359D"
    },
    "13723": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1342,
        1347
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13724": {
      "dev": "Division by zero",
      "fn": "HomoraMath.sqrt",
      "offset": [
        1342,
        1347
      ],
      "op": "INVALID",
      "path": "51"
    },
    "13725": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1342,
        1347
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13726": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1342,
        1347
      ],
      "op": "DIV",
      "path": "51"
    },
    "13727": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1338,
        1339
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13728": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1338,
        1347
      ],
      "op": "ADD",
      "path": "51"
    },
    "13729": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1337,
        1353
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13730": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1337,
        1353
      ],
      "op": "SHR",
      "path": "51"
    },
    "13731": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1333,
        1353
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13732": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1333,
        1353
      ],
      "op": "POP",
      "path": "51"
    },
    "13733": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1378,
        1379
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 140,
      "value": "0x1"
    },
    "13735": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1372,
        1373
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13736": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1368,
        1369
      ],
      "op": "DUP6",
      "path": "51"
    },
    "13737": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1368,
        1373
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13738": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1368,
        1373
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x35AF"
    },
    "13741": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1368,
        1373
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13742": {
      "dev": "Division by zero",
      "fn": "HomoraMath.sqrt",
      "offset": [
        1368,
        1373
      ],
      "op": "INVALID",
      "path": "51"
    },
    "13743": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1368,
        1373
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13744": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1368,
        1373
      ],
      "op": "DIV",
      "path": "51"
    },
    "13745": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1364,
        1365
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13746": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1364,
        1373
      ],
      "op": "ADD",
      "path": "51"
    },
    "13747": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1363,
        1379
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13748": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1363,
        1379
      ],
      "op": "SHR",
      "path": "51"
    },
    "13749": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1359,
        1379
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13750": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1359,
        1379
      ],
      "op": "POP",
      "path": "51"
    },
    "13751": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1404,
        1405
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 141,
      "value": "0x1"
    },
    "13753": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1398,
        1399
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13754": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1394,
        1395
      ],
      "op": "DUP6",
      "path": "51"
    },
    "13755": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1394,
        1399
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13756": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1394,
        1399
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x35C1"
    },
    "13759": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1394,
        1399
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13760": {
      "dev": "Division by zero",
      "fn": "HomoraMath.sqrt",
      "offset": [
        1394,
        1399
      ],
      "op": "INVALID",
      "path": "51"
    },
    "13761": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1394,
        1399
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13762": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1394,
        1399
      ],
      "op": "DIV",
      "path": "51"
    },
    "13763": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1390,
        1391
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13764": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1390,
        1399
      ],
      "op": "ADD",
      "path": "51"
    },
    "13765": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1389,
        1405
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13766": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1389,
        1405
      ],
      "op": "SHR",
      "path": "51"
    },
    "13767": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1385,
        1405
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13768": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1385,
        1405
      ],
      "op": "POP",
      "path": "51"
    },
    "13769": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1430,
        1431
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 142,
      "value": "0x1"
    },
    "13771": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1424,
        1425
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13772": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1420,
        1421
      ],
      "op": "DUP6",
      "path": "51"
    },
    "13773": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1420,
        1425
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13774": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1420,
        1425
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x35D3"
    },
    "13777": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1420,
        1425
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13778": {
      "dev": "Division by zero",
      "fn": "HomoraMath.sqrt",
      "offset": [
        1420,
        1425
      ],
      "op": "INVALID",
      "path": "51"
    },
    "13779": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1420,
        1425
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13780": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1420,
        1425
      ],
      "op": "DIV",
      "path": "51"
    },
    "13781": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1416,
        1417
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13782": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1416,
        1425
      ],
      "op": "ADD",
      "path": "51"
    },
    "13783": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1415,
        1431
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13784": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1415,
        1431
      ],
      "op": "SHR",
      "path": "51"
    },
    "13785": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1411,
        1431
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13786": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1411,
        1431
      ],
      "op": "POP",
      "path": "51"
    },
    "13787": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1456,
        1457
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 143,
      "value": "0x1"
    },
    "13789": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1450,
        1451
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13790": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1446,
        1447
      ],
      "op": "DUP6",
      "path": "51"
    },
    "13791": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1446,
        1451
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13792": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1446,
        1451
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x35E5"
    },
    "13795": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1446,
        1451
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13796": {
      "dev": "Division by zero",
      "fn": "HomoraMath.sqrt",
      "offset": [
        1446,
        1451
      ],
      "op": "INVALID",
      "path": "51"
    },
    "13797": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1446,
        1451
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13798": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1446,
        1451
      ],
      "op": "DIV",
      "path": "51"
    },
    "13799": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1442,
        1443
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13800": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1442,
        1451
      ],
      "op": "ADD",
      "path": "51"
    },
    "13801": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1441,
        1457
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13802": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1441,
        1457
      ],
      "op": "SHR",
      "path": "51"
    },
    "13803": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1437,
        1457
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13804": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1437,
        1457
      ],
      "op": "POP",
      "path": "51"
    },
    "13805": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1482,
        1483
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 144,
      "value": "0x1"
    },
    "13807": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1476,
        1477
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13808": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1472,
        1473
      ],
      "op": "DUP6",
      "path": "51"
    },
    "13809": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1472,
        1477
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13810": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1472,
        1477
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x35F7"
    },
    "13813": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1472,
        1477
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13814": {
      "dev": "Division by zero",
      "fn": "HomoraMath.sqrt",
      "offset": [
        1472,
        1477
      ],
      "op": "INVALID",
      "path": "51"
    },
    "13815": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1472,
        1477
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13816": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1472,
        1477
      ],
      "op": "DIV",
      "path": "51"
    },
    "13817": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1468,
        1469
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13818": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1468,
        1477
      ],
      "op": "ADD",
      "path": "51"
    },
    "13819": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1467,
        1483
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13820": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1467,
        1483
      ],
      "op": "SHR",
      "path": "51"
    },
    "13821": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1463,
        1483
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13822": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1463,
        1483
      ],
      "op": "POP",
      "path": "51"
    },
    "13823": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1508,
        1509
      ],
      "op": "PUSH1",
      "path": "51",
      "statement": 145,
      "value": "0x1"
    },
    "13825": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1502,
        1503
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13826": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1498,
        1499
      ],
      "op": "DUP6",
      "path": "51"
    },
    "13827": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1498,
        1503
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13828": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1498,
        1503
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x3609"
    },
    "13831": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1498,
        1503
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13832": {
      "dev": "Division by zero",
      "fn": "HomoraMath.sqrt",
      "offset": [
        1498,
        1503
      ],
      "op": "INVALID",
      "path": "51"
    },
    "13833": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1498,
        1503
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13834": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1498,
        1503
      ],
      "op": "DIV",
      "path": "51"
    },
    "13835": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1494,
        1495
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13836": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1494,
        1503
      ],
      "op": "ADD",
      "path": "51"
    },
    "13837": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1493,
        1509
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13838": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1493,
        1509
      ],
      "op": "SHR",
      "path": "51"
    },
    "13839": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1489,
        1509
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13840": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1489,
        1509
      ],
      "op": "POP",
      "path": "51"
    },
    "13841": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1552,
        1559
      ],
      "op": "PUSH1",
      "path": "51",
      "value": "0x0"
    },
    "13843": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1566,
        1567
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13844": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1562,
        1563
      ],
      "op": "DUP6",
      "path": "51"
    },
    "13845": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1562,
        1567
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13846": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1562,
        1567
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x361B"
    },
    "13849": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1562,
        1567
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13850": {
      "dev": "Division by zero",
      "fn": "HomoraMath.sqrt",
      "offset": [
        1562,
        1567
      ],
      "op": "INVALID",
      "path": "51"
    },
    "13851": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1562,
        1567
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13852": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1562,
        1567
      ],
      "op": "DIV",
      "path": "51"
    },
    "13853": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1552,
        1567
      ],
      "op": "SWAP1",
      "path": "51"
    },
    "13854": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1552,
        1567
      ],
      "op": "POP",
      "path": "51"
    },
    "13855": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1585,
        1587
      ],
      "op": "DUP1",
      "path": "51",
      "statement": 146
    },
    "13856": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1581,
        1582
      ],
      "op": "DUP3",
      "path": "51"
    },
    "13857": {
      "branch": 202,
      "fn": "HomoraMath.sqrt",
      "offset": [
        1581,
        1587
      ],
      "op": "LT",
      "path": "51"
    },
    "13858": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1581,
        1596
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x362B"
    },
    "13861": {
      "branch": 202,
      "fn": "HomoraMath.sqrt",
      "offset": [
        1581,
        1596
      ],
      "op": "JUMPI",
      "path": "51"
    },
    "13862": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1594,
        1596
      ],
      "op": "DUP1",
      "path": "51"
    },
    "13863": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1581,
        1596
      ],
      "op": "PUSH2",
      "path": "51",
      "value": "0x362D"
    },
    "13866": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1581,
        1596
      ],
      "op": "JUMP",
      "path": "51"
    },
    "13867": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1581,
        1596
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13868": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1590,
        1591
      ],
      "op": "DUP2",
      "path": "51"
    },
    "13869": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1581,
        1596
      ],
      "op": "JUMPDEST",
      "path": "51"
    },
    "13870": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        1573,
        1597
      ],
      "op": "SWAP6",
      "path": "51"
    },
    "13871": {
      "fn": "HomoraMath.sqrt",
      "offset": [
        753,
        1602
      ],
      "op": "SWAP5",
      "path": "51"
    },
    "13872": {
      "op": "POP"
    },
    "13873": {
      "op": "POP"
    },
    "13874": {
      "op": "POP"
    },
    "13875": {
      "op": "POP"
    },
    "13876": {
      "op": "POP"
    },
    "13877": {
      "fn": "HomoraMath.sqrt",
      "jump": "o",
      "offset": [
        753,
        1602
      ],
      "op": "JUMP",
      "path": "51"
    },
    "13878": {
      "op": "JUMPDEST"
    },
    "13879": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "13881": {
      "op": "DUP1"
    },
    "13882": {
      "op": "DUP4"
    },
    "13883": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "13885": {
      "op": "DUP5"
    },
    "13886": {
      "op": "ADD"
    },
    "13887": {
      "op": "SLT"
    },
    "13888": {
      "op": "PUSH2",
      "value": "0x3647"
    },
    "13891": {
      "op": "JUMPI"
    },
    "13892": {
      "op": "DUP2"
    },
    "13893": {
      "op": "DUP3"
    },
    "13894": {
      "op": "REVERT"
    },
    "13895": {
      "op": "JUMPDEST"
    },
    "13896": {
      "op": "POP"
    },
    "13897": {
      "op": "DUP2"
    },
    "13898": {
      "op": "CALLDATALOAD"
    },
    "13899": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "13908": {
      "op": "DUP2"
    },
    "13909": {
      "op": "GT"
    },
    "13910": {
      "op": "ISZERO"
    },
    "13911": {
      "op": "PUSH2",
      "value": "0x365E"
    },
    "13914": {
      "op": "JUMPI"
    },
    "13915": {
      "op": "DUP2"
    },
    "13916": {
      "op": "DUP3"
    },
    "13917": {
      "op": "REVERT"
    },
    "13918": {
      "op": "JUMPDEST"
    },
    "13919": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "13921": {
      "op": "DUP4"
    },
    "13922": {
      "op": "ADD"
    },
    "13923": {
      "op": "SWAP2"
    },
    "13924": {
      "op": "POP"
    },
    "13925": {
      "op": "DUP4"
    },
    "13926": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "13928": {
      "op": "DUP1"
    },
    "13929": {
      "op": "DUP4"
    },
    "13930": {
      "op": "MUL"
    },
    "13931": {
      "op": "DUP6"
    },
    "13932": {
      "op": "ADD"
    },
    "13933": {
      "op": "ADD"
    },
    "13934": {
      "op": "GT"
    },
    "13935": {
      "op": "ISZERO"
    },
    "13936": {
      "op": "PUSH2",
      "value": "0x3678"
    },
    "13939": {
      "op": "JUMPI"
    },
    "13940": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "13942": {
      "op": "DUP1"
    },
    "13943": {
      "op": "REVERT"
    },
    "13944": {
      "op": "JUMPDEST"
    },
    "13945": {
      "op": "SWAP3"
    },
    "13946": {
      "op": "POP"
    },
    "13947": {
      "op": "SWAP3"
    },
    "13948": {
      "op": "SWAP1"
    },
    "13949": {
      "op": "POP"
    },
    "13950": {
      "op": "JUMP"
    },
    "13951": {
      "op": "JUMPDEST"
    },
    "13952": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "13954": {
      "op": "DUP1"
    },
    "13955": {
      "op": "DUP4"
    },
    "13956": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "13958": {
      "op": "DUP5"
    },
    "13959": {
      "op": "ADD"
    },
    "13960": {
      "op": "SLT"
    },
    "13961": {
      "op": "PUSH2",
      "value": "0x3690"
    },
    "13964": {
      "op": "JUMPI"
    },
    "13965": {
      "op": "DUP2"
    },
    "13966": {
      "op": "DUP3"
    },
    "13967": {
      "op": "REVERT"
    },
    "13968": {
      "op": "JUMPDEST"
    },
    "13969": {
      "op": "POP"
    },
    "13970": {
      "op": "DUP2"
    },
    "13971": {
      "op": "CALLDATALOAD"
    },
    "13972": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "13981": {
      "op": "DUP2"
    },
    "13982": {
      "op": "GT"
    },
    "13983": {
      "op": "ISZERO"
    },
    "13984": {
      "op": "PUSH2",
      "value": "0x36A7"
    },
    "13987": {
      "op": "JUMPI"
    },
    "13988": {
      "op": "DUP2"
    },
    "13989": {
      "op": "DUP3"
    },
    "13990": {
      "op": "REVERT"
    },
    "13991": {
      "op": "JUMPDEST"
    },
    "13992": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "13994": {
      "op": "DUP4"
    },
    "13995": {
      "op": "ADD"
    },
    "13996": {
      "op": "SWAP2"
    },
    "13997": {
      "op": "POP"
    },
    "13998": {
      "op": "DUP4"
    },
    "13999": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14001": {
      "op": "DUP3"
    },
    "14002": {
      "op": "DUP6"
    },
    "14003": {
      "op": "ADD"
    },
    "14004": {
      "op": "ADD"
    },
    "14005": {
      "op": "GT"
    },
    "14006": {
      "op": "ISZERO"
    },
    "14007": {
      "op": "PUSH2",
      "value": "0x3678"
    },
    "14010": {
      "op": "JUMPI"
    },
    "14011": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14013": {
      "op": "DUP1"
    },
    "14014": {
      "op": "REVERT"
    },
    "14015": {
      "op": "JUMPDEST"
    },
    "14016": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14018": {
      "op": "PUSH2",
      "value": "0x100"
    },
    "14021": {
      "op": "DUP3"
    },
    "14022": {
      "op": "DUP5"
    },
    "14023": {
      "op": "SUB"
    },
    "14024": {
      "op": "SLT"
    },
    "14025": {
      "op": "ISZERO"
    },
    "14026": {
      "op": "PUSH2",
      "value": "0x36D1"
    },
    "14029": {
      "op": "JUMPI"
    },
    "14030": {
      "op": "DUP1"
    },
    "14031": {
      "op": "DUP2"
    },
    "14032": {
      "op": "REVERT"
    },
    "14033": {
      "op": "JUMPDEST"
    },
    "14034": {
      "op": "POP"
    },
    "14035": {
      "op": "SWAP2"
    },
    "14036": {
      "op": "SWAP1"
    },
    "14037": {
      "op": "POP"
    },
    "14038": {
      "op": "JUMP"
    },
    "14039": {
      "op": "JUMPDEST"
    },
    "14040": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14042": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "14044": {
      "op": "DUP3"
    },
    "14045": {
      "op": "DUP5"
    },
    "14046": {
      "op": "SUB"
    },
    "14047": {
      "op": "SLT"
    },
    "14048": {
      "op": "ISZERO"
    },
    "14049": {
      "op": "PUSH2",
      "value": "0x36D1"
    },
    "14052": {
      "op": "JUMPI"
    },
    "14053": {
      "op": "DUP1"
    },
    "14054": {
      "op": "DUP2"
    },
    "14055": {
      "op": "REVERT"
    },
    "14056": {
      "op": "JUMPDEST"
    },
    "14057": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14059": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14061": {
      "op": "DUP3"
    },
    "14062": {
      "op": "DUP5"
    },
    "14063": {
      "op": "SUB"
    },
    "14064": {
      "op": "SLT"
    },
    "14065": {
      "op": "ISZERO"
    },
    "14066": {
      "op": "PUSH2",
      "value": "0x36F9"
    },
    "14069": {
      "op": "JUMPI"
    },
    "14070": {
      "op": "DUP1"
    },
    "14071": {
      "op": "DUP2"
    },
    "14072": {
      "op": "REVERT"
    },
    "14073": {
      "op": "JUMPDEST"
    },
    "14074": {
      "op": "DUP2"
    },
    "14075": {
      "op": "CALLDATALOAD"
    },
    "14076": {
      "op": "PUSH2",
      "value": "0x63E"
    },
    "14079": {
      "op": "DUP2"
    },
    "14080": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14083": {
      "op": "JUMP"
    },
    "14084": {
      "op": "JUMPDEST"
    },
    "14085": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14087": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14089": {
      "op": "DUP3"
    },
    "14090": {
      "op": "DUP5"
    },
    "14091": {
      "op": "SUB"
    },
    "14092": {
      "op": "SLT"
    },
    "14093": {
      "op": "ISZERO"
    },
    "14094": {
      "op": "PUSH2",
      "value": "0x3715"
    },
    "14097": {
      "op": "JUMPI"
    },
    "14098": {
      "op": "DUP1"
    },
    "14099": {
      "op": "DUP2"
    },
    "14100": {
      "op": "REVERT"
    },
    "14101": {
      "op": "JUMPDEST"
    },
    "14102": {
      "op": "DUP2"
    },
    "14103": {
      "op": "MLOAD"
    },
    "14104": {
      "op": "PUSH2",
      "value": "0x63E"
    },
    "14107": {
      "op": "DUP2"
    },
    "14108": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14111": {
      "op": "JUMP"
    },
    "14112": {
      "op": "JUMPDEST"
    },
    "14113": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14115": {
      "op": "DUP1"
    },
    "14116": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "14118": {
      "op": "DUP4"
    },
    "14119": {
      "op": "DUP6"
    },
    "14120": {
      "op": "SUB"
    },
    "14121": {
      "op": "SLT"
    },
    "14122": {
      "op": "ISZERO"
    },
    "14123": {
      "op": "PUSH2",
      "value": "0x3732"
    },
    "14126": {
      "op": "JUMPI"
    },
    "14127": {
      "op": "DUP1"
    },
    "14128": {
      "op": "DUP2"
    },
    "14129": {
      "op": "REVERT"
    },
    "14130": {
      "op": "JUMPDEST"
    },
    "14131": {
      "op": "DUP3"
    },
    "14132": {
      "op": "CALLDATALOAD"
    },
    "14133": {
      "op": "PUSH2",
      "value": "0x373D"
    },
    "14136": {
      "op": "DUP2"
    },
    "14137": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14140": {
      "op": "JUMP"
    },
    "14141": {
      "op": "JUMPDEST"
    },
    "14142": {
      "op": "SWAP2"
    },
    "14143": {
      "op": "POP"
    },
    "14144": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14146": {
      "op": "DUP4"
    },
    "14147": {
      "op": "ADD"
    },
    "14148": {
      "op": "CALLDATALOAD"
    },
    "14149": {
      "op": "PUSH2",
      "value": "0x374D"
    },
    "14152": {
      "op": "DUP2"
    },
    "14153": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14156": {
      "op": "JUMP"
    },
    "14157": {
      "op": "JUMPDEST"
    },
    "14158": {
      "op": "DUP1"
    },
    "14159": {
      "op": "SWAP2"
    },
    "14160": {
      "op": "POP"
    },
    "14161": {
      "op": "POP"
    },
    "14162": {
      "op": "SWAP3"
    },
    "14163": {
      "op": "POP"
    },
    "14164": {
      "op": "SWAP3"
    },
    "14165": {
      "op": "SWAP1"
    },
    "14166": {
      "op": "POP"
    },
    "14167": {
      "op": "JUMP"
    },
    "14168": {
      "op": "JUMPDEST"
    },
    "14169": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14171": {
      "op": "DUP1"
    },
    "14172": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14174": {
      "op": "DUP1"
    },
    "14175": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14177": {
      "op": "DUP1"
    },
    "14178": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14180": {
      "op": "DUP1"
    },
    "14181": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "14183": {
      "op": "DUP10"
    },
    "14184": {
      "op": "DUP12"
    },
    "14185": {
      "op": "SUB"
    },
    "14186": {
      "op": "SLT"
    },
    "14187": {
      "op": "ISZERO"
    },
    "14188": {
      "op": "PUSH2",
      "value": "0x3773"
    },
    "14191": {
      "op": "JUMPI"
    },
    "14192": {
      "op": "DUP4"
    },
    "14193": {
      "op": "DUP5"
    },
    "14194": {
      "op": "REVERT"
    },
    "14195": {
      "op": "JUMPDEST"
    },
    "14196": {
      "op": "DUP9"
    },
    "14197": {
      "op": "CALLDATALOAD"
    },
    "14198": {
      "op": "PUSH2",
      "value": "0x377E"
    },
    "14201": {
      "op": "DUP2"
    },
    "14202": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14205": {
      "op": "JUMP"
    },
    "14206": {
      "op": "JUMPDEST"
    },
    "14207": {
      "op": "SWAP8"
    },
    "14208": {
      "op": "POP"
    },
    "14209": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14211": {
      "op": "DUP10"
    },
    "14212": {
      "op": "ADD"
    },
    "14213": {
      "op": "CALLDATALOAD"
    },
    "14214": {
      "op": "PUSH2",
      "value": "0x378E"
    },
    "14217": {
      "op": "DUP2"
    },
    "14218": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14221": {
      "op": "JUMP"
    },
    "14222": {
      "op": "JUMPDEST"
    },
    "14223": {
      "op": "SWAP7"
    },
    "14224": {
      "op": "POP"
    },
    "14225": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "14227": {
      "op": "DUP10"
    },
    "14228": {
      "op": "ADD"
    },
    "14229": {
      "op": "CALLDATALOAD"
    },
    "14230": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "14239": {
      "op": "DUP1"
    },
    "14240": {
      "op": "DUP3"
    },
    "14241": {
      "op": "GT"
    },
    "14242": {
      "op": "ISZERO"
    },
    "14243": {
      "op": "PUSH2",
      "value": "0x37AA"
    },
    "14246": {
      "op": "JUMPI"
    },
    "14247": {
      "op": "DUP6"
    },
    "14248": {
      "op": "DUP7"
    },
    "14249": {
      "op": "REVERT"
    },
    "14250": {
      "op": "JUMPDEST"
    },
    "14251": {
      "op": "PUSH2",
      "value": "0x37B6"
    },
    "14254": {
      "op": "DUP13"
    },
    "14255": {
      "op": "DUP4"
    },
    "14256": {
      "op": "DUP14"
    },
    "14257": {
      "op": "ADD"
    },
    "14258": {
      "op": "PUSH2",
      "value": "0x3636"
    },
    "14261": {
      "op": "JUMP"
    },
    "14262": {
      "op": "JUMPDEST"
    },
    "14263": {
      "op": "SWAP1"
    },
    "14264": {
      "op": "SWAP9"
    },
    "14265": {
      "op": "POP"
    },
    "14266": {
      "op": "SWAP7"
    },
    "14267": {
      "op": "POP"
    },
    "14268": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "14270": {
      "op": "DUP12"
    },
    "14271": {
      "op": "ADD"
    },
    "14272": {
      "op": "CALLDATALOAD"
    },
    "14273": {
      "op": "SWAP2"
    },
    "14274": {
      "op": "POP"
    },
    "14275": {
      "op": "DUP1"
    },
    "14276": {
      "op": "DUP3"
    },
    "14277": {
      "op": "GT"
    },
    "14278": {
      "op": "ISZERO"
    },
    "14279": {
      "op": "PUSH2",
      "value": "0x37CE"
    },
    "14282": {
      "op": "JUMPI"
    },
    "14283": {
      "op": "DUP6"
    },
    "14284": {
      "op": "DUP7"
    },
    "14285": {
      "op": "REVERT"
    },
    "14286": {
      "op": "JUMPDEST"
    },
    "14287": {
      "op": "PUSH2",
      "value": "0x37DA"
    },
    "14290": {
      "op": "DUP13"
    },
    "14291": {
      "op": "DUP4"
    },
    "14292": {
      "op": "DUP14"
    },
    "14293": {
      "op": "ADD"
    },
    "14294": {
      "op": "PUSH2",
      "value": "0x3636"
    },
    "14297": {
      "op": "JUMP"
    },
    "14298": {
      "op": "JUMPDEST"
    },
    "14299": {
      "op": "SWAP1"
    },
    "14300": {
      "op": "SWAP7"
    },
    "14301": {
      "op": "POP"
    },
    "14302": {
      "op": "SWAP5"
    },
    "14303": {
      "op": "POP"
    },
    "14304": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "14306": {
      "op": "DUP12"
    },
    "14307": {
      "op": "ADD"
    },
    "14308": {
      "op": "CALLDATALOAD"
    },
    "14309": {
      "op": "SWAP2"
    },
    "14310": {
      "op": "POP"
    },
    "14311": {
      "op": "DUP1"
    },
    "14312": {
      "op": "DUP3"
    },
    "14313": {
      "op": "GT"
    },
    "14314": {
      "op": "ISZERO"
    },
    "14315": {
      "op": "PUSH2",
      "value": "0x37F2"
    },
    "14318": {
      "op": "JUMPI"
    },
    "14319": {
      "op": "DUP4"
    },
    "14320": {
      "op": "DUP5"
    },
    "14321": {
      "op": "REVERT"
    },
    "14322": {
      "op": "JUMPDEST"
    },
    "14323": {
      "op": "POP"
    },
    "14324": {
      "op": "PUSH2",
      "value": "0x37FF"
    },
    "14327": {
      "op": "DUP12"
    },
    "14328": {
      "op": "DUP3"
    },
    "14329": {
      "op": "DUP13"
    },
    "14330": {
      "op": "ADD"
    },
    "14331": {
      "op": "PUSH2",
      "value": "0x367F"
    },
    "14334": {
      "op": "JUMP"
    },
    "14335": {
      "op": "JUMPDEST"
    },
    "14336": {
      "op": "SWAP10"
    },
    "14337": {
      "op": "SWAP13"
    },
    "14338": {
      "op": "SWAP9"
    },
    "14339": {
      "op": "SWAP12"
    },
    "14340": {
      "op": "POP"
    },
    "14341": {
      "op": "SWAP7"
    },
    "14342": {
      "op": "SWAP10"
    },
    "14343": {
      "op": "POP"
    },
    "14344": {
      "op": "SWAP5"
    },
    "14345": {
      "op": "SWAP8"
    },
    "14346": {
      "op": "SWAP4"
    },
    "14347": {
      "op": "SWAP7"
    },
    "14348": {
      "op": "SWAP3"
    },
    "14349": {
      "op": "SWAP6"
    },
    "14350": {
      "op": "SWAP5"
    },
    "14351": {
      "op": "POP"
    },
    "14352": {
      "op": "POP"
    },
    "14353": {
      "op": "POP"
    },
    "14354": {
      "op": "JUMP"
    },
    "14355": {
      "op": "JUMPDEST"
    },
    "14356": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14358": {
      "op": "DUP1"
    },
    "14359": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14361": {
      "op": "PUSH2",
      "value": "0x140"
    },
    "14364": {
      "op": "DUP5"
    },
    "14365": {
      "op": "DUP7"
    },
    "14366": {
      "op": "SUB"
    },
    "14367": {
      "op": "SLT"
    },
    "14368": {
      "op": "ISZERO"
    },
    "14369": {
      "op": "PUSH2",
      "value": "0x3828"
    },
    "14372": {
      "op": "JUMPI"
    },
    "14373": {
      "op": "DUP3"
    },
    "14374": {
      "op": "DUP4"
    },
    "14375": {
      "op": "REVERT"
    },
    "14376": {
      "op": "JUMPDEST"
    },
    "14377": {
      "op": "DUP4"
    },
    "14378": {
      "op": "CALLDATALOAD"
    },
    "14379": {
      "op": "PUSH2",
      "value": "0x3833"
    },
    "14382": {
      "op": "DUP2"
    },
    "14383": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14386": {
      "op": "JUMP"
    },
    "14387": {
      "op": "JUMPDEST"
    },
    "14388": {
      "op": "SWAP3"
    },
    "14389": {
      "op": "POP"
    },
    "14390": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14392": {
      "op": "DUP5"
    },
    "14393": {
      "op": "ADD"
    },
    "14394": {
      "op": "CALLDATALOAD"
    },
    "14395": {
      "op": "PUSH2",
      "value": "0x3843"
    },
    "14398": {
      "op": "DUP2"
    },
    "14399": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14402": {
      "op": "JUMP"
    },
    "14403": {
      "op": "JUMPDEST"
    },
    "14404": {
      "op": "SWAP2"
    },
    "14405": {
      "op": "POP"
    },
    "14406": {
      "op": "PUSH2",
      "value": "0x3852"
    },
    "14409": {
      "op": "DUP6"
    },
    "14410": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "14412": {
      "op": "DUP7"
    },
    "14413": {
      "op": "ADD"
    },
    "14414": {
      "op": "PUSH2",
      "value": "0x36BF"
    },
    "14417": {
      "op": "JUMP"
    },
    "14418": {
      "op": "JUMPDEST"
    },
    "14419": {
      "op": "SWAP1"
    },
    "14420": {
      "op": "POP"
    },
    "14421": {
      "op": "SWAP3"
    },
    "14422": {
      "op": "POP"
    },
    "14423": {
      "op": "SWAP3"
    },
    "14424": {
      "op": "POP"
    },
    "14425": {
      "op": "SWAP3"
    },
    "14426": {
      "op": "JUMP"
    },
    "14427": {
      "op": "JUMPDEST"
    },
    "14428": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14430": {
      "op": "DUP1"
    },
    "14431": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14433": {
      "op": "DUP1"
    },
    "14434": {
      "op": "PUSH2",
      "value": "0x160"
    },
    "14437": {
      "op": "DUP6"
    },
    "14438": {
      "op": "DUP8"
    },
    "14439": {
      "op": "SUB"
    },
    "14440": {
      "op": "SLT"
    },
    "14441": {
      "op": "ISZERO"
    },
    "14442": {
      "op": "PUSH2",
      "value": "0x3871"
    },
    "14445": {
      "op": "JUMPI"
    },
    "14446": {
      "op": "DUP4"
    },
    "14447": {
      "op": "DUP5"
    },
    "14448": {
      "op": "REVERT"
    },
    "14449": {
      "op": "JUMPDEST"
    },
    "14450": {
      "op": "DUP5"
    },
    "14451": {
      "op": "CALLDATALOAD"
    },
    "14452": {
      "op": "PUSH2",
      "value": "0x387C"
    },
    "14455": {
      "op": "DUP2"
    },
    "14456": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14459": {
      "op": "JUMP"
    },
    "14460": {
      "op": "JUMPDEST"
    },
    "14461": {
      "op": "SWAP4"
    },
    "14462": {
      "op": "POP"
    },
    "14463": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14465": {
      "op": "DUP6"
    },
    "14466": {
      "op": "ADD"
    },
    "14467": {
      "op": "CALLDATALOAD"
    },
    "14468": {
      "op": "PUSH2",
      "value": "0x388C"
    },
    "14471": {
      "op": "DUP2"
    },
    "14472": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14475": {
      "op": "JUMP"
    },
    "14476": {
      "op": "JUMPDEST"
    },
    "14477": {
      "op": "SWAP3"
    },
    "14478": {
      "op": "POP"
    },
    "14479": {
      "op": "PUSH2",
      "value": "0x389B"
    },
    "14482": {
      "op": "DUP7"
    },
    "14483": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "14485": {
      "op": "DUP8"
    },
    "14486": {
      "op": "ADD"
    },
    "14487": {
      "op": "PUSH2",
      "value": "0x36BF"
    },
    "14490": {
      "op": "JUMP"
    },
    "14491": {
      "op": "JUMPDEST"
    },
    "14492": {
      "op": "SWAP2"
    },
    "14493": {
      "op": "POP"
    },
    "14494": {
      "op": "PUSH2",
      "value": "0x140"
    },
    "14497": {
      "op": "DUP6"
    },
    "14498": {
      "op": "ADD"
    },
    "14499": {
      "op": "CALLDATALOAD"
    },
    "14500": {
      "op": "PUSH2",
      "value": "0x38AC"
    },
    "14503": {
      "op": "DUP2"
    },
    "14504": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14507": {
      "op": "JUMP"
    },
    "14508": {
      "op": "JUMPDEST"
    },
    "14509": {
      "op": "SWAP4"
    },
    "14510": {
      "op": "SWAP7"
    },
    "14511": {
      "op": "SWAP3"
    },
    "14512": {
      "op": "SWAP6"
    },
    "14513": {
      "op": "POP"
    },
    "14514": {
      "op": "SWAP1"
    },
    "14515": {
      "op": "SWAP4"
    },
    "14516": {
      "op": "POP"
    },
    "14517": {
      "op": "POP"
    },
    "14518": {
      "op": "JUMP"
    },
    "14519": {
      "op": "JUMPDEST"
    },
    "14520": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14522": {
      "op": "DUP1"
    },
    "14523": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14525": {
      "op": "PUSH2",
      "value": "0x120"
    },
    "14528": {
      "op": "DUP5"
    },
    "14529": {
      "op": "DUP7"
    },
    "14530": {
      "op": "SUB"
    },
    "14531": {
      "op": "SLT"
    },
    "14532": {
      "op": "ISZERO"
    },
    "14533": {
      "op": "PUSH2",
      "value": "0x38CC"
    },
    "14536": {
      "op": "JUMPI"
    },
    "14537": {
      "op": "DUP3"
    },
    "14538": {
      "op": "DUP4"
    },
    "14539": {
      "op": "REVERT"
    },
    "14540": {
      "op": "JUMPDEST"
    },
    "14541": {
      "op": "DUP4"
    },
    "14542": {
      "op": "CALLDATALOAD"
    },
    "14543": {
      "op": "PUSH2",
      "value": "0x38D7"
    },
    "14546": {
      "op": "DUP2"
    },
    "14547": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14550": {
      "op": "JUMP"
    },
    "14551": {
      "op": "JUMPDEST"
    },
    "14552": {
      "op": "SWAP3"
    },
    "14553": {
      "op": "POP"
    },
    "14554": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14556": {
      "op": "DUP5"
    },
    "14557": {
      "op": "ADD"
    },
    "14558": {
      "op": "CALLDATALOAD"
    },
    "14559": {
      "op": "PUSH2",
      "value": "0x38E7"
    },
    "14562": {
      "op": "DUP2"
    },
    "14563": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14566": {
      "op": "JUMP"
    },
    "14567": {
      "op": "JUMPDEST"
    },
    "14568": {
      "op": "SWAP2"
    },
    "14569": {
      "op": "POP"
    },
    "14570": {
      "op": "PUSH2",
      "value": "0x3852"
    },
    "14573": {
      "op": "DUP6"
    },
    "14574": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "14576": {
      "op": "DUP7"
    },
    "14577": {
      "op": "ADD"
    },
    "14578": {
      "op": "PUSH2",
      "value": "0x36D7"
    },
    "14581": {
      "op": "JUMP"
    },
    "14582": {
      "op": "JUMPDEST"
    },
    "14583": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14585": {
      "op": "DUP1"
    },
    "14586": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14588": {
      "op": "DUP1"
    },
    "14589": {
      "op": "PUSH2",
      "value": "0x140"
    },
    "14592": {
      "op": "DUP6"
    },
    "14593": {
      "op": "DUP8"
    },
    "14594": {
      "op": "SUB"
    },
    "14595": {
      "op": "SLT"
    },
    "14596": {
      "op": "ISZERO"
    },
    "14597": {
      "op": "PUSH2",
      "value": "0x390C"
    },
    "14600": {
      "op": "JUMPI"
    },
    "14601": {
      "op": "DUP4"
    },
    "14602": {
      "op": "DUP5"
    },
    "14603": {
      "op": "REVERT"
    },
    "14604": {
      "op": "JUMPDEST"
    },
    "14605": {
      "op": "DUP5"
    },
    "14606": {
      "op": "CALLDATALOAD"
    },
    "14607": {
      "op": "PUSH2",
      "value": "0x3917"
    },
    "14610": {
      "op": "DUP2"
    },
    "14611": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14614": {
      "op": "JUMP"
    },
    "14615": {
      "op": "JUMPDEST"
    },
    "14616": {
      "op": "SWAP4"
    },
    "14617": {
      "op": "POP"
    },
    "14618": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14620": {
      "op": "DUP6"
    },
    "14621": {
      "op": "ADD"
    },
    "14622": {
      "op": "CALLDATALOAD"
    },
    "14623": {
      "op": "PUSH2",
      "value": "0x3927"
    },
    "14626": {
      "op": "DUP2"
    },
    "14627": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14630": {
      "op": "JUMP"
    },
    "14631": {
      "op": "JUMPDEST"
    },
    "14632": {
      "op": "SWAP3"
    },
    "14633": {
      "op": "POP"
    },
    "14634": {
      "op": "PUSH2",
      "value": "0x3936"
    },
    "14637": {
      "op": "DUP7"
    },
    "14638": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "14640": {
      "op": "DUP8"
    },
    "14641": {
      "op": "ADD"
    },
    "14642": {
      "op": "PUSH2",
      "value": "0x36D7"
    },
    "14645": {
      "op": "JUMP"
    },
    "14646": {
      "op": "JUMPDEST"
    },
    "14647": {
      "op": "SWAP2"
    },
    "14648": {
      "op": "POP"
    },
    "14649": {
      "op": "PUSH2",
      "value": "0x120"
    },
    "14652": {
      "op": "DUP6"
    },
    "14653": {
      "op": "ADD"
    },
    "14654": {
      "op": "CALLDATALOAD"
    },
    "14655": {
      "op": "PUSH2",
      "value": "0x38AC"
    },
    "14658": {
      "op": "DUP2"
    },
    "14659": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14662": {
      "op": "JUMP"
    },
    "14663": {
      "op": "JUMPDEST"
    },
    "14664": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14666": {
      "op": "DUP1"
    },
    "14667": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14669": {
      "op": "DUP1"
    },
    "14670": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "14672": {
      "op": "DUP6"
    },
    "14673": {
      "op": "DUP8"
    },
    "14674": {
      "op": "SUB"
    },
    "14675": {
      "op": "SLT"
    },
    "14676": {
      "op": "ISZERO"
    },
    "14677": {
      "op": "PUSH2",
      "value": "0x395C"
    },
    "14680": {
      "op": "JUMPI"
    },
    "14681": {
      "op": "DUP2"
    },
    "14682": {
      "op": "DUP3"
    },
    "14683": {
      "op": "REVERT"
    },
    "14684": {
      "op": "JUMPDEST"
    },
    "14685": {
      "op": "DUP5"
    },
    "14686": {
      "op": "MLOAD"
    },
    "14687": {
      "op": "PUSH2",
      "value": "0x3967"
    },
    "14690": {
      "op": "DUP2"
    },
    "14691": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14694": {
      "op": "JUMP"
    },
    "14695": {
      "op": "JUMPDEST"
    },
    "14696": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14698": {
      "op": "DUP7"
    },
    "14699": {
      "op": "ADD"
    },
    "14700": {
      "op": "MLOAD"
    },
    "14701": {
      "op": "SWAP1"
    },
    "14702": {
      "op": "SWAP5"
    },
    "14703": {
      "op": "POP"
    },
    "14704": {
      "op": "PUSH2",
      "value": "0x3978"
    },
    "14707": {
      "op": "DUP2"
    },
    "14708": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14711": {
      "op": "JUMP"
    },
    "14712": {
      "op": "JUMPDEST"
    },
    "14713": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "14715": {
      "op": "DUP7"
    },
    "14716": {
      "op": "ADD"
    },
    "14717": {
      "op": "MLOAD"
    },
    "14718": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "14720": {
      "op": "SWAP1"
    },
    "14721": {
      "op": "SWAP7"
    },
    "14722": {
      "op": "ADD"
    },
    "14723": {
      "op": "MLOAD"
    },
    "14724": {
      "op": "SWAP5"
    },
    "14725": {
      "op": "SWAP8"
    },
    "14726": {
      "op": "SWAP1"
    },
    "14727": {
      "op": "SWAP7"
    },
    "14728": {
      "op": "POP"
    },
    "14729": {
      "op": "SWAP3"
    },
    "14730": {
      "op": "POP"
    },
    "14731": {
      "op": "POP"
    },
    "14732": {
      "op": "POP"
    },
    "14733": {
      "op": "JUMP"
    },
    "14734": {
      "op": "JUMPDEST"
    },
    "14735": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14737": {
      "op": "DUP1"
    },
    "14738": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14740": {
      "op": "DUP1"
    },
    "14741": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14743": {
      "op": "DUP1"
    },
    "14744": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "14746": {
      "op": "DUP8"
    },
    "14747": {
      "op": "DUP10"
    },
    "14748": {
      "op": "SUB"
    },
    "14749": {
      "op": "SLT"
    },
    "14750": {
      "op": "ISZERO"
    },
    "14751": {
      "op": "PUSH2",
      "value": "0x39A6"
    },
    "14754": {
      "op": "JUMPI"
    },
    "14755": {
      "op": "DUP4"
    },
    "14756": {
      "op": "DUP5"
    },
    "14757": {
      "op": "REVERT"
    },
    "14758": {
      "op": "JUMPDEST"
    },
    "14759": {
      "op": "DUP7"
    },
    "14760": {
      "op": "CALLDATALOAD"
    },
    "14761": {
      "op": "PUSH2",
      "value": "0x39B1"
    },
    "14764": {
      "op": "DUP2"
    },
    "14765": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14768": {
      "op": "JUMP"
    },
    "14769": {
      "op": "JUMPDEST"
    },
    "14770": {
      "op": "SWAP6"
    },
    "14771": {
      "op": "POP"
    },
    "14772": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14774": {
      "op": "DUP8"
    },
    "14775": {
      "op": "ADD"
    },
    "14776": {
      "op": "CALLDATALOAD"
    },
    "14777": {
      "op": "PUSH2",
      "value": "0x39C1"
    },
    "14780": {
      "op": "DUP2"
    },
    "14781": {
      "op": "PUSH2",
      "value": "0x42F1"
    },
    "14784": {
      "op": "JUMP"
    },
    "14785": {
      "op": "JUMPDEST"
    },
    "14786": {
      "op": "SWAP5"
    },
    "14787": {
      "op": "POP"
    },
    "14788": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "14790": {
      "op": "DUP8"
    },
    "14791": {
      "op": "ADD"
    },
    "14792": {
      "op": "CALLDATALOAD"
    },
    "14793": {
      "op": "SWAP4"
    },
    "14794": {
      "op": "POP"
    },
    "14795": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "14797": {
      "op": "DUP8"
    },
    "14798": {
      "op": "ADD"
    },
    "14799": {
      "op": "CALLDATALOAD"
    },
    "14800": {
      "op": "SWAP3"
    },
    "14801": {
      "op": "POP"
    },
    "14802": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "14804": {
      "op": "DUP8"
    },
    "14805": {
      "op": "ADD"
    },
    "14806": {
      "op": "CALLDATALOAD"
    },
    "14807": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "14816": {
      "op": "DUP2"
    },
    "14817": {
      "op": "GT"
    },
    "14818": {
      "op": "ISZERO"
    },
    "14819": {
      "op": "PUSH2",
      "value": "0x39EA"
    },
    "14822": {
      "op": "JUMPI"
    },
    "14823": {
      "op": "DUP3"
    },
    "14824": {
      "op": "DUP4"
    },
    "14825": {
      "op": "REVERT"
    },
    "14826": {
      "op": "JUMPDEST"
    },
    "14827": {
      "op": "PUSH2",
      "value": "0x39F6"
    },
    "14830": {
      "op": "DUP10"
    },
    "14831": {
      "op": "DUP3"
    },
    "14832": {
      "op": "DUP11"
    },
    "14833": {
      "op": "ADD"
    },
    "14834": {
      "op": "PUSH2",
      "value": "0x367F"
    },
    "14837": {
      "op": "JUMP"
    },
    "14838": {
      "op": "JUMPDEST"
    },
    "14839": {
      "op": "SWAP8"
    },
    "14840": {
      "op": "SWAP11"
    },
    "14841": {
      "op": "SWAP7"
    },
    "14842": {
      "op": "SWAP10"
    },
    "14843": {
      "op": "POP"
    },
    "14844": {
      "op": "SWAP5"
    },
    "14845": {
      "op": "SWAP8"
    },
    "14846": {
      "op": "POP"
    },
    "14847": {
      "op": "SWAP3"
    },
    "14848": {
      "op": "SWAP6"
    },
    "14849": {
      "op": "SWAP4"
    },
    "14850": {
      "op": "SWAP5"
    },
    "14851": {
      "op": "SWAP3"
    },
    "14852": {
      "op": "POP"
    },
    "14853": {
      "op": "POP"
    },
    "14854": {
      "op": "POP"
    },
    "14855": {
      "op": "JUMP"
    },
    "14856": {
      "op": "JUMPDEST"
    },
    "14857": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14859": {
      "op": "DUP1"
    },
    "14860": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14862": {
      "op": "DUP1"
    },
    "14863": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "14865": {
      "op": "DUP6"
    },
    "14866": {
      "op": "DUP8"
    },
    "14867": {
      "op": "SUB"
    },
    "14868": {
      "op": "SLT"
    },
    "14869": {
      "op": "ISZERO"
    },
    "14870": {
      "op": "PUSH2",
      "value": "0x3A1D"
    },
    "14873": {
      "op": "JUMPI"
    },
    "14874": {
      "op": "DUP2"
    },
    "14875": {
      "op": "DUP3"
    },
    "14876": {
      "op": "REVERT"
    },
    "14877": {
      "op": "JUMPDEST"
    },
    "14878": {
      "op": "DUP5"
    },
    "14879": {
      "op": "CALLDATALOAD"
    },
    "14880": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "14889": {
      "op": "DUP1"
    },
    "14890": {
      "op": "DUP3"
    },
    "14891": {
      "op": "GT"
    },
    "14892": {
      "op": "ISZERO"
    },
    "14893": {
      "op": "PUSH2",
      "value": "0x3A34"
    },
    "14896": {
      "op": "JUMPI"
    },
    "14897": {
      "op": "DUP4"
    },
    "14898": {
      "op": "DUP5"
    },
    "14899": {
      "op": "REVERT"
    },
    "14900": {
      "op": "JUMPDEST"
    },
    "14901": {
      "op": "PUSH2",
      "value": "0x3A40"
    },
    "14904": {
      "op": "DUP9"
    },
    "14905": {
      "op": "DUP4"
    },
    "14906": {
      "op": "DUP10"
    },
    "14907": {
      "op": "ADD"
    },
    "14908": {
      "op": "PUSH2",
      "value": "0x3636"
    },
    "14911": {
      "op": "JUMP"
    },
    "14912": {
      "op": "JUMPDEST"
    },
    "14913": {
      "op": "SWAP1"
    },
    "14914": {
      "op": "SWAP7"
    },
    "14915": {
      "op": "POP"
    },
    "14916": {
      "op": "SWAP5"
    },
    "14917": {
      "op": "POP"
    },
    "14918": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14920": {
      "op": "DUP8"
    },
    "14921": {
      "op": "ADD"
    },
    "14922": {
      "op": "CALLDATALOAD"
    },
    "14923": {
      "op": "SWAP2"
    },
    "14924": {
      "op": "POP"
    },
    "14925": {
      "op": "DUP1"
    },
    "14926": {
      "op": "DUP3"
    },
    "14927": {
      "op": "GT"
    },
    "14928": {
      "op": "ISZERO"
    },
    "14929": {
      "op": "PUSH2",
      "value": "0x3A58"
    },
    "14932": {
      "op": "JUMPI"
    },
    "14933": {
      "op": "DUP4"
    },
    "14934": {
      "op": "DUP5"
    },
    "14935": {
      "op": "REVERT"
    },
    "14936": {
      "op": "JUMPDEST"
    },
    "14937": {
      "op": "POP"
    },
    "14938": {
      "op": "PUSH2",
      "value": "0x3A65"
    },
    "14941": {
      "op": "DUP8"
    },
    "14942": {
      "op": "DUP3"
    },
    "14943": {
      "op": "DUP9"
    },
    "14944": {
      "op": "ADD"
    },
    "14945": {
      "op": "PUSH2",
      "value": "0x3636"
    },
    "14948": {
      "op": "JUMP"
    },
    "14949": {
      "op": "JUMPDEST"
    },
    "14950": {
      "op": "SWAP6"
    },
    "14951": {
      "op": "SWAP9"
    },
    "14952": {
      "op": "SWAP5"
    },
    "14953": {
      "op": "SWAP8"
    },
    "14954": {
      "op": "POP"
    },
    "14955": {
      "op": "SWAP6"
    },
    "14956": {
      "op": "POP"
    },
    "14957": {
      "op": "POP"
    },
    "14958": {
      "op": "POP"
    },
    "14959": {
      "op": "POP"
    },
    "14960": {
      "op": "JUMP"
    },
    "14961": {
      "op": "JUMPDEST"
    },
    "14962": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "14964": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "14966": {
      "op": "DUP1"
    },
    "14967": {
      "op": "DUP4"
    },
    "14968": {
      "op": "DUP6"
    },
    "14969": {
      "op": "SUB"
    },
    "14970": {
      "op": "SLT"
    },
    "14971": {
      "op": "ISZERO"
    },
    "14972": {
      "op": "PUSH2",
      "value": "0x3A83"
    },
    "14975": {
      "op": "JUMPI"
    },
    "14976": {
      "op": "DUP2"
    },
    "14977": {
      "op": "DUP3"
    },
    "14978": {
      "op": "REVERT"
    },
    "14979": {
      "op": "JUMPDEST"
    },
    "14980": {
      "op": "DUP3"
    },
    "14981": {
      "op": "MLOAD"
    },
    "14982": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "14991": {
      "op": "DUP2"
    },
    "14992": {
      "op": "GT"
    },
    "14993": {
      "op": "ISZERO"
    },
    "14994": {
      "op": "PUSH2",
      "value": "0x3A99"
    },
    "14997": {
      "op": "JUMPI"
    },
    "14998": {
      "op": "DUP3"
    },
    "14999": {
      "op": "DUP4"
    },
    "15000": {
      "op": "REVERT"
    },
    "15001": {
      "op": "JUMPDEST"
    },
    "15002": {
      "op": "DUP4"
    },
    "15003": {
      "op": "ADD"
    },
    "15004": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "15006": {
      "op": "DUP2"
    },
    "15007": {
      "op": "ADD"
    },
    "15008": {
      "op": "DUP6"
    },
    "15009": {
      "op": "SGT"
    },
    "15010": {
      "op": "PUSH2",
      "value": "0x3AA9"
    },
    "15013": {
      "op": "JUMPI"
    },
    "15014": {
      "op": "DUP3"
    },
    "15015": {
      "op": "DUP4"
    },
    "15016": {
      "op": "REVERT"
    },
    "15017": {
      "op": "JUMPDEST"
    },
    "15018": {
      "op": "DUP1"
    },
    "15019": {
      "op": "MLOAD"
    },
    "15020": {
      "op": "PUSH2",
      "value": "0x3ABC"
    },
    "15023": {
      "op": "PUSH2",
      "value": "0x3AB7"
    },
    "15026": {
      "op": "DUP3"
    },
    "15027": {
      "op": "PUSH2",
      "value": "0x42A5"
    },
    "15030": {
      "op": "JUMP"
    },
    "15031": {
      "op": "JUMPDEST"
    },
    "15032": {
      "op": "PUSH2",
      "value": "0x427E"
    },
    "15035": {
      "op": "JUMP"
    },
    "15036": {
      "op": "JUMPDEST"
    },
    "15037": {
      "op": "DUP2"
    },
    "15038": {
      "op": "DUP2"
    },
    "15039": {
      "op": "MSTORE"
    },
    "15040": {
      "op": "DUP4"
    },
    "15041": {
      "op": "DUP2"
    },
    "15042": {
      "op": "ADD"
    },
    "15043": {
      "op": "SWAP1"
    },
    "15044": {
      "op": "DUP4"
    },
    "15045": {
      "op": "DUP6"
    },
    "15046": {
      "op": "ADD"
    },
    "15047": {
      "op": "DUP6"
    },
    "15048": {
      "op": "DUP5"
    },
    "15049": {
      "op": "MUL"
    },
    "15050": {
      "op": "DUP6"
    },
    "15051": {
      "op": "ADD"
    },
    "15052": {
      "op": "DUP7"
    },
    "15053": {
      "op": "ADD"
    },
    "15054": {
      "op": "DUP10"
    },
    "15055": {
      "op": "LT"
    },
    "15056": {
      "op": "ISZERO"
    },
    "15057": {
      "op": "PUSH2",
      "value": "0x3AD8"
    },
    "15060": {
      "op": "JUMPI"
    },
    "15061": {
      "op": "DUP7"
    },
    "15062": {
      "op": "DUP8"
    },
    "15063": {
      "op": "REVERT"
    },
    "15064": {
      "op": "JUMPDEST"
    },
    "15065": {
      "op": "DUP7"
    },
    "15066": {
      "op": "SWAP5"
    },
    "15067": {
      "op": "POP"
    },
    "15068": {
      "op": "JUMPDEST"
    },
    "15069": {
      "op": "DUP4"
    },
    "15070": {
      "op": "DUP6"
    },
    "15071": {
      "op": "LT"
    },
    "15072": {
      "op": "ISZERO"
    },
    "15073": {
      "op": "PUSH2",
      "value": "0x3AFA"
    },
    "15076": {
      "op": "JUMPI"
    },
    "15077": {
      "op": "DUP1"
    },
    "15078": {
      "op": "MLOAD"
    },
    "15079": {
      "op": "DUP4"
    },
    "15080": {
      "op": "MSTORE"
    },
    "15081": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15083": {
      "op": "SWAP5"
    },
    "15084": {
      "op": "SWAP1"
    },
    "15085": {
      "op": "SWAP5"
    },
    "15086": {
      "op": "ADD"
    },
    "15087": {
      "op": "SWAP4"
    },
    "15088": {
      "op": "SWAP2"
    },
    "15089": {
      "op": "DUP6"
    },
    "15090": {
      "op": "ADD"
    },
    "15091": {
      "op": "SWAP2"
    },
    "15092": {
      "op": "DUP6"
    },
    "15093": {
      "op": "ADD"
    },
    "15094": {
      "op": "PUSH2",
      "value": "0x3ADC"
    },
    "15097": {
      "op": "JUMP"
    },
    "15098": {
      "op": "JUMPDEST"
    },
    "15099": {
      "op": "POP"
    },
    "15100": {
      "op": "SWAP8"
    },
    "15101": {
      "op": "SWAP7"
    },
    "15102": {
      "op": "POP"
    },
    "15103": {
      "op": "POP"
    },
    "15104": {
      "op": "POP"
    },
    "15105": {
      "op": "POP"
    },
    "15106": {
      "op": "POP"
    },
    "15107": {
      "op": "POP"
    },
    "15108": {
      "op": "POP"
    },
    "15109": {
      "op": "JUMP"
    },
    "15110": {
      "op": "JUMPDEST"
    },
    "15111": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "15113": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15115": {
      "op": "DUP3"
    },
    "15116": {
      "op": "DUP5"
    },
    "15117": {
      "op": "SUB"
    },
    "15118": {
      "op": "SLT"
    },
    "15119": {
      "op": "ISZERO"
    },
    "15120": {
      "op": "PUSH2",
      "value": "0x3B17"
    },
    "15123": {
      "op": "JUMPI"
    },
    "15124": {
      "op": "DUP1"
    },
    "15125": {
      "op": "DUP2"
    },
    "15126": {
      "op": "REVERT"
    },
    "15127": {
      "op": "JUMPDEST"
    },
    "15128": {
      "op": "DUP2"
    },
    "15129": {
      "op": "CALLDATALOAD"
    },
    "15130": {
      "op": "PUSH2",
      "value": "0x63E"
    },
    "15133": {
      "op": "DUP2"
    },
    "15134": {
      "op": "PUSH2",
      "value": "0x4306"
    },
    "15137": {
      "op": "JUMP"
    },
    "15138": {
      "op": "JUMPDEST"
    },
    "15139": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "15141": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15143": {
      "op": "DUP3"
    },
    "15144": {
      "op": "DUP5"
    },
    "15145": {
      "op": "SUB"
    },
    "15146": {
      "op": "SLT"
    },
    "15147": {
      "op": "ISZERO"
    },
    "15148": {
      "op": "PUSH2",
      "value": "0x3B33"
    },
    "15151": {
      "op": "JUMPI"
    },
    "15152": {
      "op": "DUP1"
    },
    "15153": {
      "op": "DUP2"
    },
    "15154": {
      "op": "REVERT"
    },
    "15155": {
      "op": "JUMPDEST"
    },
    "15156": {
      "op": "DUP2"
    },
    "15157": {
      "op": "MLOAD"
    },
    "15158": {
      "op": "PUSH2",
      "value": "0x63E"
    },
    "15161": {
      "op": "DUP2"
    },
    "15162": {
      "op": "PUSH2",
      "value": "0x4306"
    },
    "15165": {
      "op": "JUMP"
    },
    "15166": {
      "op": "JUMPDEST"
    },
    "15167": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "15169": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15171": {
      "op": "DUP3"
    },
    "15172": {
      "op": "DUP5"
    },
    "15173": {
      "op": "SUB"
    },
    "15174": {
      "op": "SLT"
    },
    "15175": {
      "op": "ISZERO"
    },
    "15176": {
      "op": "PUSH2",
      "value": "0x3B4F"
    },
    "15179": {
      "op": "JUMPI"
    },
    "15180": {
      "op": "DUP1"
    },
    "15181": {
      "op": "DUP2"
    },
    "15182": {
      "op": "REVERT"
    },
    "15183": {
      "op": "JUMPDEST"
    },
    "15184": {
      "op": "DUP2"
    },
    "15185": {
      "op": "CALLDATALOAD"
    },
    "15186": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15188": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15190": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "15192": {
      "op": "SHL"
    },
    "15193": {
      "op": "SUB"
    },
    "15194": {
      "op": "NOT"
    },
    "15195": {
      "op": "DUP2"
    },
    "15196": {
      "op": "AND"
    },
    "15197": {
      "op": "DUP2"
    },
    "15198": {
      "op": "EQ"
    },
    "15199": {
      "op": "PUSH2",
      "value": "0x63E"
    },
    "15202": {
      "op": "JUMPI"
    },
    "15203": {
      "op": "DUP2"
    },
    "15204": {
      "op": "DUP3"
    },
    "15205": {
      "op": "REVERT"
    },
    "15206": {
      "op": "JUMPDEST"
    },
    "15207": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "15209": {
      "op": "DUP1"
    },
    "15210": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "15212": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "15214": {
      "op": "DUP5"
    },
    "15215": {
      "op": "DUP7"
    },
    "15216": {
      "op": "SUB"
    },
    "15217": {
      "op": "SLT"
    },
    "15218": {
      "op": "ISZERO"
    },
    "15219": {
      "op": "PUSH2",
      "value": "0x3B7A"
    },
    "15222": {
      "op": "JUMPI"
    },
    "15223": {
      "op": "DUP1"
    },
    "15224": {
      "op": "DUP2"
    },
    "15225": {
      "op": "REVERT"
    },
    "15226": {
      "op": "JUMPDEST"
    },
    "15227": {
      "op": "DUP4"
    },
    "15228": {
      "op": "MLOAD"
    },
    "15229": {
      "op": "PUSH2",
      "value": "0x3B85"
    },
    "15232": {
      "op": "DUP2"
    },
    "15233": {
      "op": "PUSH2",
      "value": "0x4314"
    },
    "15236": {
      "op": "JUMP"
    },
    "15237": {
      "op": "JUMPDEST"
    },
    "15238": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15240": {
      "op": "DUP6"
    },
    "15241": {
      "op": "ADD"
    },
    "15242": {
      "op": "MLOAD"
    },
    "15243": {
      "op": "SWAP1"
    },
    "15244": {
      "op": "SWAP4"
    },
    "15245": {
      "op": "POP"
    },
    "15246": {
      "op": "PUSH2",
      "value": "0x3B96"
    },
    "15249": {
      "op": "DUP2"
    },
    "15250": {
      "op": "PUSH2",
      "value": "0x4314"
    },
    "15253": {
      "op": "JUMP"
    },
    "15254": {
      "op": "JUMPDEST"
    },
    "15255": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15257": {
      "op": "DUP6"
    },
    "15258": {
      "op": "ADD"
    },
    "15259": {
      "op": "MLOAD"
    },
    "15260": {
      "op": "SWAP1"
    },
    "15261": {
      "op": "SWAP3"
    },
    "15262": {
      "op": "POP"
    },
    "15263": {
      "op": "PUSH4",
      "value": "0xFFFFFFFF"
    },
    "15268": {
      "op": "DUP2"
    },
    "15269": {
      "op": "AND"
    },
    "15270": {
      "op": "DUP2"
    },
    "15271": {
      "op": "EQ"
    },
    "15272": {
      "op": "PUSH2",
      "value": "0x3BAF"
    },
    "15275": {
      "op": "JUMPI"
    },
    "15276": {
      "op": "DUP2"
    },
    "15277": {
      "op": "DUP3"
    },
    "15278": {
      "op": "REVERT"
    },
    "15279": {
      "op": "JUMPDEST"
    },
    "15280": {
      "op": "DUP1"
    },
    "15281": {
      "op": "SWAP2"
    },
    "15282": {
      "op": "POP"
    },
    "15283": {
      "op": "POP"
    },
    "15284": {
      "op": "SWAP3"
    },
    "15285": {
      "op": "POP"
    },
    "15286": {
      "op": "SWAP3"
    },
    "15287": {
      "op": "POP"
    },
    "15288": {
      "op": "SWAP3"
    },
    "15289": {
      "op": "JUMP"
    },
    "15290": {
      "op": "JUMPDEST"
    },
    "15291": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "15293": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15295": {
      "op": "DUP3"
    },
    "15296": {
      "op": "DUP5"
    },
    "15297": {
      "op": "SUB"
    },
    "15298": {
      "op": "SLT"
    },
    "15299": {
      "op": "ISZERO"
    },
    "15300": {
      "op": "PUSH2",
      "value": "0x3BCB"
    },
    "15303": {
      "op": "JUMPI"
    },
    "15304": {
      "op": "DUP1"
    },
    "15305": {
      "op": "DUP2"
    },
    "15306": {
      "op": "REVERT"
    },
    "15307": {
      "op": "JUMPDEST"
    },
    "15308": {
      "op": "POP"
    },
    "15309": {
      "op": "MLOAD"
    },
    "15310": {
      "op": "SWAP2"
    },
    "15311": {
      "op": "SWAP1"
    },
    "15312": {
      "op": "POP"
    },
    "15313": {
      "op": "JUMP"
    },
    "15314": {
      "op": "JUMPDEST"
    },
    "15315": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "15317": {
      "op": "DUP1"
    },
    "15318": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15320": {
      "op": "DUP4"
    },
    "15321": {
      "op": "DUP6"
    },
    "15322": {
      "op": "SUB"
    },
    "15323": {
      "op": "SLT"
    },
    "15324": {
      "op": "ISZERO"
    },
    "15325": {
      "op": "PUSH2",
      "value": "0x3BE4"
    },
    "15328": {
      "op": "JUMPI"
    },
    "15329": {
      "op": "DUP2"
    },
    "15330": {
      "op": "DUP3"
    },
    "15331": {
      "op": "REVERT"
    },
    "15332": {
      "op": "JUMPDEST"
    },
    "15333": {
      "op": "POP"
    },
    "15334": {
      "op": "POP"
    },
    "15335": {
      "op": "DUP1"
    },
    "15336": {
      "op": "MLOAD"
    },
    "15337": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15339": {
      "op": "SWAP1"
    },
    "15340": {
      "op": "SWAP2"
    },
    "15341": {
      "op": "ADD"
    },
    "15342": {
      "op": "MLOAD"
    },
    "15343": {
      "op": "SWAP1"
    },
    "15344": {
      "op": "SWAP3"
    },
    "15345": {
      "op": "SWAP1"
    },
    "15346": {
      "op": "SWAP2"
    },
    "15347": {
      "op": "POP"
    },
    "15348": {
      "op": "JUMP"
    },
    "15349": {
      "op": "JUMPDEST"
    },
    "15350": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "15352": {
      "op": "DUP1"
    },
    "15353": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "15355": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "15357": {
      "op": "DUP5"
    },
    "15358": {
      "op": "DUP7"
    },
    "15359": {
      "op": "SUB"
    },
    "15360": {
      "op": "SLT"
    },
    "15361": {
      "op": "ISZERO"
    },
    "15362": {
      "op": "PUSH2",
      "value": "0x3C09"
    },
    "15365": {
      "op": "JUMPI"
    },
    "15366": {
      "op": "DUP1"
    },
    "15367": {
      "op": "DUP2"
    },
    "15368": {
      "op": "REVERT"
    },
    "15369": {
      "op": "JUMPDEST"
    },
    "15370": {
      "op": "DUP4"
    },
    "15371": {
      "op": "MLOAD"
    },
    "15372": {
      "op": "SWAP3"
    },
    "15373": {
      "op": "POP"
    },
    "15374": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15376": {
      "op": "DUP5"
    },
    "15377": {
      "op": "ADD"
    },
    "15378": {
      "op": "MLOAD"
    },
    "15379": {
      "op": "SWAP2"
    },
    "15380": {
      "op": "POP"
    },
    "15381": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15383": {
      "op": "DUP5"
    },
    "15384": {
      "op": "ADD"
    },
    "15385": {
      "op": "MLOAD"
    },
    "15386": {
      "op": "SWAP1"
    },
    "15387": {
      "op": "POP"
    },
    "15388": {
      "op": "SWAP3"
    },
    "15389": {
      "op": "POP"
    },
    "15390": {
      "op": "SWAP3"
    },
    "15391": {
      "op": "POP"
    },
    "15392": {
      "op": "SWAP3"
    },
    "15393": {
      "op": "JUMP"
    },
    "15394": {
      "op": "JUMPDEST"
    },
    "15395": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "15397": {
      "op": "DUP2"
    },
    "15398": {
      "op": "MLOAD"
    },
    "15399": {
      "op": "DUP1"
    },
    "15400": {
      "op": "DUP5"
    },
    "15401": {
      "op": "MSTORE"
    },
    "15402": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15404": {
      "op": "DUP1"
    },
    "15405": {
      "op": "DUP6"
    },
    "15406": {
      "op": "ADD"
    },
    "15407": {
      "op": "SWAP5"
    },
    "15408": {
      "op": "POP"
    },
    "15409": {
      "op": "DUP1"
    },
    "15410": {
      "op": "DUP5"
    },
    "15411": {
      "op": "ADD"
    },
    "15412": {
      "op": "DUP4"
    },
    "15413": {
      "op": "JUMPDEST"
    },
    "15414": {
      "op": "DUP4"
    },
    "15415": {
      "op": "DUP2"
    },
    "15416": {
      "op": "LT"
    },
    "15417": {
      "op": "ISZERO"
    },
    "15418": {
      "op": "PUSH2",
      "value": "0x3C5A"
    },
    "15421": {
      "op": "JUMPI"
    },
    "15422": {
      "op": "DUP2"
    },
    "15423": {
      "op": "MLOAD"
    },
    "15424": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15426": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15428": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "15430": {
      "op": "SHL"
    },
    "15431": {
      "op": "SUB"
    },
    "15432": {
      "op": "AND"
    },
    "15433": {
      "op": "DUP8"
    },
    "15434": {
      "op": "MSTORE"
    },
    "15435": {
      "op": "SWAP6"
    },
    "15436": {
      "op": "DUP3"
    },
    "15437": {
      "op": "ADD"
    },
    "15438": {
      "op": "SWAP6"
    },
    "15439": {
      "op": "SWAP1"
    },
    "15440": {
      "op": "DUP3"
    },
    "15441": {
      "op": "ADD"
    },
    "15442": {
      "op": "SWAP1"
    },
    "15443": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15445": {
      "op": "ADD"
    },
    "15446": {
      "op": "PUSH2",
      "value": "0x3C35"
    },
    "15449": {
      "op": "JUMP"
    },
    "15450": {
      "op": "JUMPDEST"
    },
    "15451": {
      "op": "POP"
    },
    "15452": {
      "op": "SWAP5"
    },
    "15453": {
      "op": "SWAP6"
    },
    "15454": {
      "op": "SWAP5"
    },
    "15455": {
      "op": "POP"
    },
    "15456": {
      "op": "POP"
    },
    "15457": {
      "op": "POP"
    },
    "15458": {
      "op": "POP"
    },
    "15459": {
      "op": "POP"
    },
    "15460": {
      "op": "JUMP"
    },
    "15461": {
      "op": "JUMPDEST"
    },
    "15462": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "15464": {
      "op": "DUP3"
    },
    "15465": {
      "op": "MLOAD"
    },
    "15466": {
      "op": "PUSH2",
      "value": "0x3C77"
    },
    "15469": {
      "op": "DUP2"
    },
    "15470": {
      "op": "DUP5"
    },
    "15471": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15473": {
      "op": "DUP8"
    },
    "15474": {
      "op": "ADD"
    },
    "15475": {
      "op": "PUSH2",
      "value": "0x42C5"
    },
    "15478": {
      "op": "JUMP"
    },
    "15479": {
      "op": "JUMPDEST"
    },
    "15480": {
      "op": "SWAP2"
    },
    "15481": {
      "op": "SWAP1"
    },
    "15482": {
      "op": "SWAP2"
    },
    "15483": {
      "op": "ADD"
    },
    "15484": {
      "op": "SWAP3"
    },
    "15485": {
      "op": "SWAP2"
    },
    "15486": {
      "op": "POP"
    },
    "15487": {
      "op": "POP"
    },
    "15488": {
      "op": "JUMP"
    },
    "15489": {
      "op": "JUMPDEST"
    },
    "15490": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15492": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15494": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "15496": {
      "op": "SHL"
    },
    "15497": {
      "op": "SUB"
    },
    "15498": {
      "op": "SWAP2"
    },
    "15499": {
      "op": "SWAP1"
    },
    "15500": {
      "op": "SWAP2"
    },
    "15501": {
      "op": "AND"
    },
    "15502": {
      "op": "DUP2"
    },
    "15503": {
      "op": "MSTORE"
    },
    "15504": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15506": {
      "op": "ADD"
    },
    "15507": {
      "op": "SWAP1"
    },
    "15508": {
      "op": "JUMP"
    },
    "15509": {
      "op": "JUMPDEST"
    },
    "15510": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15512": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15514": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "15516": {
      "op": "SHL"
    },
    "15517": {
      "op": "SUB"
    },
    "15518": {
      "op": "SWAP3"
    },
    "15519": {
      "op": "DUP4"
    },
    "15520": {
      "op": "AND"
    },
    "15521": {
      "op": "DUP2"
    },
    "15522": {
      "op": "MSTORE"
    },
    "15523": {
      "op": "SWAP2"
    },
    "15524": {
      "op": "AND"
    },
    "15525": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15527": {
      "op": "DUP3"
    },
    "15528": {
      "op": "ADD"
    },
    "15529": {
      "op": "MSTORE"
    },
    "15530": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15532": {
      "op": "ADD"
    },
    "15533": {
      "op": "SWAP1"
    },
    "15534": {
      "op": "JUMP"
    },
    "15535": {
      "op": "JUMPDEST"
    },
    "15536": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15538": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15540": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "15542": {
      "op": "SHL"
    },
    "15543": {
      "op": "SUB"
    },
    "15544": {
      "op": "SWAP8"
    },
    "15545": {
      "op": "DUP9"
    },
    "15546": {
      "op": "AND"
    },
    "15547": {
      "op": "DUP2"
    },
    "15548": {
      "op": "MSTORE"
    },
    "15549": {
      "op": "SWAP6"
    },
    "15550": {
      "op": "DUP8"
    },
    "15551": {
      "op": "AND"
    },
    "15552": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15554": {
      "op": "DUP8"
    },
    "15555": {
      "op": "ADD"
    },
    "15556": {
      "op": "MSTORE"
    },
    "15557": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15559": {
      "op": "DUP7"
    },
    "15560": {
      "op": "ADD"
    },
    "15561": {
      "op": "SWAP5"
    },
    "15562": {
      "op": "SWAP1"
    },
    "15563": {
      "op": "SWAP5"
    },
    "15564": {
      "op": "MSTORE"
    },
    "15565": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "15567": {
      "op": "DUP6"
    },
    "15568": {
      "op": "ADD"
    },
    "15569": {
      "op": "SWAP3"
    },
    "15570": {
      "op": "SWAP1"
    },
    "15571": {
      "op": "SWAP3"
    },
    "15572": {
      "op": "MSTORE"
    },
    "15573": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "15575": {
      "op": "DUP5"
    },
    "15576": {
      "op": "ADD"
    },
    "15577": {
      "op": "MSTORE"
    },
    "15578": {
      "op": "SWAP1"
    },
    "15579": {
      "op": "SWAP3"
    },
    "15580": {
      "op": "AND"
    },
    "15581": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "15583": {
      "op": "DUP3"
    },
    "15584": {
      "op": "ADD"
    },
    "15585": {
      "op": "MSTORE"
    },
    "15586": {
      "op": "PUSH1",
      "value": "0xC0"
    },
    "15588": {
      "op": "DUP2"
    },
    "15589": {
      "op": "ADD"
    },
    "15590": {
      "op": "SWAP2"
    },
    "15591": {
      "op": "SWAP1"
    },
    "15592": {
      "op": "SWAP2"
    },
    "15593": {
      "op": "MSTORE"
    },
    "15594": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "15596": {
      "op": "ADD"
    },
    "15597": {
      "op": "SWAP1"
    },
    "15598": {
      "op": "JUMP"
    },
    "15599": {
      "op": "JUMPDEST"
    },
    "15600": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15602": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15604": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "15606": {
      "op": "SHL"
    },
    "15607": {
      "op": "SUB"
    },
    "15608": {
      "op": "SWAP9"
    },
    "15609": {
      "op": "DUP10"
    },
    "15610": {
      "op": "AND"
    },
    "15611": {
      "op": "DUP2"
    },
    "15612": {
      "op": "MSTORE"
    },
    "15613": {
      "op": "SWAP7"
    },
    "15614": {
      "op": "DUP9"
    },
    "15615": {
      "op": "AND"
    },
    "15616": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15618": {
      "op": "DUP9"
    },
    "15619": {
      "op": "ADD"
    },
    "15620": {
      "op": "MSTORE"
    },
    "15621": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15623": {
      "op": "DUP8"
    },
    "15624": {
      "op": "ADD"
    },
    "15625": {
      "op": "SWAP6"
    },
    "15626": {
      "op": "SWAP1"
    },
    "15627": {
      "op": "SWAP6"
    },
    "15628": {
      "op": "MSTORE"
    },
    "15629": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "15631": {
      "op": "DUP7"
    },
    "15632": {
      "op": "ADD"
    },
    "15633": {
      "op": "SWAP4"
    },
    "15634": {
      "op": "SWAP1"
    },
    "15635": {
      "op": "SWAP4"
    },
    "15636": {
      "op": "MSTORE"
    },
    "15637": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "15639": {
      "op": "DUP6"
    },
    "15640": {
      "op": "ADD"
    },
    "15641": {
      "op": "SWAP2"
    },
    "15642": {
      "op": "SWAP1"
    },
    "15643": {
      "op": "SWAP2"
    },
    "15644": {
      "op": "MSTORE"
    },
    "15645": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "15647": {
      "op": "DUP5"
    },
    "15648": {
      "op": "ADD"
    },
    "15649": {
      "op": "MSTORE"
    },
    "15650": {
      "op": "SWAP1"
    },
    "15651": {
      "op": "SWAP3"
    },
    "15652": {
      "op": "AND"
    },
    "15653": {
      "op": "PUSH1",
      "value": "0xC0"
    },
    "15655": {
      "op": "DUP3"
    },
    "15656": {
      "op": "ADD"
    },
    "15657": {
      "op": "MSTORE"
    },
    "15658": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "15660": {
      "op": "DUP2"
    },
    "15661": {
      "op": "ADD"
    },
    "15662": {
      "op": "SWAP2"
    },
    "15663": {
      "op": "SWAP1"
    },
    "15664": {
      "op": "SWAP2"
    },
    "15665": {
      "op": "MSTORE"
    },
    "15666": {
      "op": "PUSH2",
      "value": "0x100"
    },
    "15669": {
      "op": "ADD"
    },
    "15670": {
      "op": "SWAP1"
    },
    "15671": {
      "op": "JUMP"
    },
    "15672": {
      "op": "JUMPDEST"
    },
    "15673": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15675": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15677": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "15679": {
      "op": "SHL"
    },
    "15680": {
      "op": "SUB"
    },
    "15681": {
      "op": "SWAP3"
    },
    "15682": {
      "op": "SWAP1"
    },
    "15683": {
      "op": "SWAP3"
    },
    "15684": {
      "op": "AND"
    },
    "15685": {
      "op": "DUP3"
    },
    "15686": {
      "op": "MSTORE"
    },
    "15687": {
      "op": "ISZERO"
    },
    "15688": {
      "op": "ISZERO"
    },
    "15689": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15691": {
      "op": "DUP3"
    },
    "15692": {
      "op": "ADD"
    },
    "15693": {
      "op": "MSTORE"
    },
    "15694": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15696": {
      "op": "ADD"
    },
    "15697": {
      "op": "SWAP1"
    },
    "15698": {
      "op": "JUMP"
    },
    "15699": {
      "op": "JUMPDEST"
    },
    "15700": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15702": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15704": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "15706": {
      "op": "SHL"
    },
    "15707": {
      "op": "SUB"
    },
    "15708": {
      "op": "SWAP3"
    },
    "15709": {
      "op": "SWAP1"
    },
    "15710": {
      "op": "SWAP3"
    },
    "15711": {
      "op": "AND"
    },
    "15712": {
      "op": "DUP3"
    },
    "15713": {
      "op": "MSTORE"
    },
    "15714": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15716": {
      "op": "DUP3"
    },
    "15717": {
      "op": "ADD"
    },
    "15718": {
      "op": "MSTORE"
    },
    "15719": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15721": {
      "op": "ADD"
    },
    "15722": {
      "op": "SWAP1"
    },
    "15723": {
      "op": "JUMP"
    },
    "15724": {
      "op": "JUMPDEST"
    },
    "15725": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15727": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15729": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "15731": {
      "op": "SHL"
    },
    "15732": {
      "op": "SUB"
    },
    "15733": {
      "op": "SWAP4"
    },
    "15734": {
      "op": "SWAP1"
    },
    "15735": {
      "op": "SWAP4"
    },
    "15736": {
      "op": "AND"
    },
    "15737": {
      "op": "DUP4"
    },
    "15738": {
      "op": "MSTORE"
    },
    "15739": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15741": {
      "op": "DUP4"
    },
    "15742": {
      "op": "ADD"
    },
    "15743": {
      "op": "SWAP2"
    },
    "15744": {
      "op": "SWAP1"
    },
    "15745": {
      "op": "SWAP2"
    },
    "15746": {
      "op": "MSTORE"
    },
    "15747": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15749": {
      "op": "DUP3"
    },
    "15750": {
      "op": "ADD"
    },
    "15751": {
      "op": "MSTORE"
    },
    "15752": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "15754": {
      "op": "ADD"
    },
    "15755": {
      "op": "SWAP1"
    },
    "15756": {
      "op": "JUMP"
    },
    "15757": {
      "op": "JUMPDEST"
    },
    "15758": {
      "op": "SWAP1"
    },
    "15759": {
      "op": "ISZERO"
    },
    "15760": {
      "op": "ISZERO"
    },
    "15761": {
      "op": "DUP2"
    },
    "15762": {
      "op": "MSTORE"
    },
    "15763": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15765": {
      "op": "ADD"
    },
    "15766": {
      "op": "SWAP1"
    },
    "15767": {
      "op": "JUMP"
    },
    "15768": {
      "op": "JUMPDEST"
    },
    "15769": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15771": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "15773": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "15775": {
      "op": "SHL"
    },
    "15776": {
      "op": "SUB"
    },
    "15777": {
      "op": "NOT"
    },
    "15778": {
      "op": "SWAP2"
    },
    "15779": {
      "op": "SWAP1"
    },
    "15780": {
      "op": "SWAP2"
    },
    "15781": {
      "op": "AND"
    },
    "15782": {
      "op": "DUP2"
    },
    "15783": {
      "op": "MSTORE"
    },
    "15784": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15786": {
      "op": "ADD"
    },
    "15787": {
      "op": "SWAP1"
    },
    "15788": {
      "op": "JUMP"
    },
    "15789": {
      "op": "JUMPDEST"
    },
    "15790": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "15792": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15794": {
      "op": "DUP3"
    },
    "15795": {
      "op": "MSTORE"
    },
    "15796": {
      "op": "DUP3"
    },
    "15797": {
      "op": "MLOAD"
    },
    "15798": {
      "op": "DUP1"
    },
    "15799": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15801": {
      "op": "DUP5"
    },
    "15802": {
      "op": "ADD"
    },
    "15803": {
      "op": "MSTORE"
    },
    "15804": {
      "op": "PUSH2",
      "value": "0x3DCC"
    },
    "15807": {
      "op": "DUP2"
    },
    "15808": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15810": {
      "op": "DUP6"
    },
    "15811": {
      "op": "ADD"
    },
    "15812": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15814": {
      "op": "DUP8"
    },
    "15815": {
      "op": "ADD"
    },
    "15816": {
      "op": "PUSH2",
      "value": "0x42C5"
    },
    "15819": {
      "op": "JUMP"
    },
    "15820": {
      "op": "JUMPDEST"
    },
    "15821": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "15823": {
      "op": "ADD"
    },
    "15824": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "15826": {
      "op": "NOT"
    },
    "15827": {
      "op": "AND"
    },
    "15828": {
      "op": "SWAP2"
    },
    "15829": {
      "op": "SWAP1"
    },
    "15830": {
      "op": "SWAP2"
    },
    "15831": {
      "op": "ADD"
    },
    "15832": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15834": {
      "op": "ADD"
    },
    "15835": {
      "op": "SWAP3"
    },
    "15836": {
      "op": "SWAP2"
    },
    "15837": {
      "op": "POP"
    },
    "15838": {
      "op": "POP"
    },
    "15839": {
      "op": "JUMP"
    },
    "15840": {
      "op": "JUMPDEST"
    },
    "15841": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15843": {
      "op": "DUP1"
    },
    "15844": {
      "op": "DUP3"
    },
    "15845": {
      "op": "MSTORE"
    },
    "15846": {
      "op": "PUSH1",
      "value": "0x11"
    },
    "15848": {
      "op": "SWAP1"
    },
    "15849": {
      "op": "DUP3"
    },
    "15850": {
      "op": "ADD"
    },
    "15851": {
      "op": "MSTORE"
    },
    "15852": {
      "op": "PUSH17",
      "value": "0x1C99599D5B99081155120819985A5B1959"
    },
    "15870": {
      "op": "PUSH1",
      "value": "0x7A"
    },
    "15872": {
      "op": "SHL"
    },
    "15873": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15875": {
      "op": "DUP3"
    },
    "15876": {
      "op": "ADD"
    },
    "15877": {
      "op": "MSTORE"
    },
    "15878": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "15880": {
      "op": "ADD"
    },
    "15881": {
      "op": "SWAP1"
    },
    "15882": {
      "op": "JUMP"
    },
    "15883": {
      "op": "JUMPDEST"
    },
    "15884": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15886": {
      "op": "DUP1"
    },
    "15887": {
      "op": "DUP3"
    },
    "15888": {
      "op": "MSTORE"
    },
    "15889": {
      "op": "PUSH1",
      "value": "0x26"
    },
    "15891": {
      "op": "SWAP1"
    },
    "15892": {
      "op": "DUP3"
    },
    "15893": {
      "op": "ADD"
    },
    "15894": {
      "op": "MSTORE"
    },
    "15895": {
      "op": "PUSH32",
      "value": "0x636F6C6C61746572616C20746F6B656E202620777374616B696E67206D69736D"
    },
    "15928": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "15930": {
      "op": "DUP3"
    },
    "15931": {
      "op": "ADD"
    },
    "15932": {
      "op": "MSTORE"
    },
    "15933": {
      "op": "PUSH6",
      "value": "0x185D18DA1959"
    },
    "15940": {
      "op": "PUSH1",
      "value": "0xD2"
    },
    "15942": {
      "op": "SHL"
    },
    "15943": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "15945": {
      "op": "DUP3"
    },
    "15946": {
      "op": "ADD"
    },
    "15947": {
      "op": "MSTORE"
    },
    "15948": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "15950": {
      "op": "ADD"
    },
    "15951": {
      "op": "SWAP1"
    },
    "15952": {
      "op": "JUMP"
    },
    "15953": {
      "op": "JUMPDEST"
    },
    "15954": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "15956": {
      "op": "DUP1"
    },
    "15957": {
      "op": "DUP3"
    },
    "15958": {
      "op": "MSTORE"
    },
    "15959": {
      "op": "PUSH1",
      "value": "0x18"
    },
    "15961": {
      "op": "SWAP1"
    },
    "15962": {
      "op": "DUP3"
    },
    "15963": {
      "op": "ADD"
    },
    "15964": {
      "op": "MSTORE"
    },
    "15965": {
      "op": "PUSH32",
      "value": "0x6E6F74207468652070656E64696E6720676F7665726E6F720000000000000000"
    },
    "15998": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16000": {
      "op": "DUP3"
    },
    "16001": {
      "op": "ADD"
    },
    "16002": {
      "op": "MSTORE"
    },
    "16003": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16005": {
      "op": "ADD"
    },
    "16006": {
      "op": "SWAP1"
    },
    "16007": {
      "op": "JUMP"
    },
    "16008": {
      "op": "JUMPDEST"
    },
    "16009": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16011": {
      "op": "DUP1"
    },
    "16012": {
      "op": "DUP3"
    },
    "16013": {
      "op": "MSTORE"
    },
    "16014": {
      "op": "PUSH1",
      "value": "0x1B"
    },
    "16016": {
      "op": "SWAP1"
    },
    "16017": {
      "op": "DUP3"
    },
    "16018": {
      "op": "ADD"
    },
    "16019": {
      "op": "MSTORE"
    },
    "16020": {
      "op": "PUSH32",
      "value": "0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000"
    },
    "16053": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16055": {
      "op": "DUP3"
    },
    "16056": {
      "op": "ADD"
    },
    "16057": {
      "op": "MSTORE"
    },
    "16058": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16060": {
      "op": "ADD"
    },
    "16061": {
      "op": "SWAP1"
    },
    "16062": {
      "op": "JUMP"
    },
    "16063": {
      "op": "JUMPDEST"
    },
    "16064": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16066": {
      "op": "DUP1"
    },
    "16067": {
      "op": "DUP3"
    },
    "16068": {
      "op": "MSTORE"
    },
    "16069": {
      "op": "PUSH1",
      "value": "0x1B"
    },
    "16071": {
      "op": "SWAP1"
    },
    "16072": {
      "op": "DUP3"
    },
    "16073": {
      "op": "ADD"
    },
    "16074": {
      "op": "MSTORE"
    },
    "16075": {
      "op": "PUSH32",
      "value": "0x6F7261636C65206E6F7420737570706F7274206C7020746F6B656E0000000000"
    },
    "16108": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16110": {
      "op": "DUP3"
    },
    "16111": {
      "op": "ADD"
    },
    "16112": {
      "op": "MSTORE"
    },
    "16113": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16115": {
      "op": "ADD"
    },
    "16116": {
      "op": "SWAP1"
    },
    "16117": {
      "op": "JUMP"
    },
    "16118": {
      "op": "JUMPDEST"
    },
    "16119": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16121": {
      "op": "DUP1"
    },
    "16122": {
      "op": "DUP3"
    },
    "16123": {
      "op": "MSTORE"
    },
    "16124": {
      "op": "PUSH1",
      "value": "0x1E"
    },
    "16126": {
      "op": "SWAP1"
    },
    "16127": {
      "op": "DUP3"
    },
    "16128": {
      "op": "ADD"
    },
    "16129": {
      "op": "MSTORE"
    },
    "16130": {
      "op": "PUSH32",
      "value": "0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000"
    },
    "16163": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16165": {
      "op": "DUP3"
    },
    "16166": {
      "op": "ADD"
    },
    "16167": {
      "op": "MSTORE"
    },
    "16168": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16170": {
      "op": "ADD"
    },
    "16171": {
      "op": "SWAP1"
    },
    "16172": {
      "op": "JUMP"
    },
    "16173": {
      "op": "JUMPDEST"
    },
    "16174": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16176": {
      "op": "DUP1"
    },
    "16177": {
      "op": "DUP3"
    },
    "16178": {
      "op": "MSTORE"
    },
    "16179": {
      "op": "PUSH1",
      "value": "0x26"
    },
    "16181": {
      "op": "SWAP1"
    },
    "16182": {
      "op": "DUP3"
    },
    "16183": {
      "op": "ADD"
    },
    "16184": {
      "op": "MSTORE"
    },
    "16185": {
      "op": "PUSH32",
      "value": "0x416464726573733A20696E73756666696369656E742062616C616E636520666F"
    },
    "16218": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16220": {
      "op": "DUP3"
    },
    "16221": {
      "op": "ADD"
    },
    "16222": {
      "op": "MSTORE"
    },
    "16223": {
      "op": "PUSH6",
      "value": "0x1C8818D85B1B"
    },
    "16230": {
      "op": "PUSH1",
      "value": "0xD2"
    },
    "16232": {
      "op": "SHL"
    },
    "16233": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16235": {
      "op": "DUP3"
    },
    "16236": {
      "op": "ADD"
    },
    "16237": {
      "op": "MSTORE"
    },
    "16238": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "16240": {
      "op": "ADD"
    },
    "16241": {
      "op": "SWAP1"
    },
    "16242": {
      "op": "JUMP"
    },
    "16243": {
      "op": "JUMPDEST"
    },
    "16244": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16246": {
      "op": "DUP1"
    },
    "16247": {
      "op": "DUP3"
    },
    "16248": {
      "op": "MSTORE"
    },
    "16249": {
      "op": "PUSH1",
      "value": "0x1A"
    },
    "16251": {
      "op": "SWAP1"
    },
    "16252": {
      "op": "DUP3"
    },
    "16253": {
      "op": "ADD"
    },
    "16254": {
      "op": "MSTORE"
    },
    "16255": {
      "op": "PUSH32",
      "value": "0x536166654D6174683A206469766973696F6E206279207A65726F000000000000"
    },
    "16288": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16290": {
      "op": "DUP3"
    },
    "16291": {
      "op": "ADD"
    },
    "16292": {
      "op": "MSTORE"
    },
    "16293": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16295": {
      "op": "ADD"
    },
    "16296": {
      "op": "SWAP1"
    },
    "16297": {
      "op": "JUMP"
    },
    "16298": {
      "op": "JUMPDEST"
    },
    "16299": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16301": {
      "op": "DUP1"
    },
    "16302": {
      "op": "DUP3"
    },
    "16303": {
      "op": "MSTORE"
    },
    "16304": {
      "op": "PUSH1",
      "value": "0x10"
    },
    "16306": {
      "op": "SWAP1"
    },
    "16307": {
      "op": "DUP3"
    },
    "16308": {
      "op": "ADD"
    },
    "16309": {
      "op": "MSTORE"
    },
    "16310": {
      "op": "PUSH16",
      "value": "0x3737BA103A34329033B7BB32B93737B9"
    },
    "16327": {
      "op": "PUSH1",
      "value": "0x81"
    },
    "16329": {
      "op": "SHL"
    },
    "16330": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16332": {
      "op": "DUP3"
    },
    "16333": {
      "op": "ADD"
    },
    "16334": {
      "op": "MSTORE"
    },
    "16335": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16337": {
      "op": "ADD"
    },
    "16338": {
      "op": "SWAP1"
    },
    "16339": {
      "op": "JUMP"
    },
    "16340": {
      "op": "JUMPDEST"
    },
    "16341": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16343": {
      "op": "DUP1"
    },
    "16344": {
      "op": "DUP3"
    },
    "16345": {
      "op": "MSTORE"
    },
    "16346": {
      "op": "PUSH1",
      "value": "0x25"
    },
    "16348": {
      "op": "SWAP1"
    },
    "16349": {
      "op": "DUP3"
    },
    "16350": {
      "op": "ADD"
    },
    "16351": {
      "op": "MSTORE"
    },
    "16352": {
      "op": "PUSH32",
      "value": "0x6C70546F6B656E732026207374617475736573206C656E677468206D69736D61"
    },
    "16385": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16387": {
      "op": "DUP3"
    },
    "16388": {
      "op": "ADD"
    },
    "16389": {
      "op": "MSTORE"
    },
    "16390": {
      "op": "PUSH5",
      "value": "0x1D18DA1959"
    },
    "16396": {
      "op": "PUSH1",
      "value": "0xDA"
    },
    "16398": {
      "op": "SHL"
    },
    "16399": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16401": {
      "op": "DUP3"
    },
    "16402": {
      "op": "ADD"
    },
    "16403": {
      "op": "MSTORE"
    },
    "16404": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "16406": {
      "op": "ADD"
    },
    "16407": {
      "op": "SWAP1"
    },
    "16408": {
      "op": "JUMP"
    },
    "16409": {
      "op": "JUMPDEST"
    },
    "16410": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16412": {
      "op": "DUP1"
    },
    "16413": {
      "op": "DUP3"
    },
    "16414": {
      "op": "MSTORE"
    },
    "16415": {
      "op": "PUSH1",
      "value": "0xB"
    },
    "16417": {
      "op": "SWAP1"
    },
    "16418": {
      "op": "DUP3"
    },
    "16419": {
      "op": "ADD"
    },
    "16420": {
      "op": "MSTORE"
    },
    "16421": {
      "op": "PUSH11",
      "value": "0x3737903638103A37B5B2B7"
    },
    "16433": {
      "op": "PUSH1",
      "value": "0xA9"
    },
    "16435": {
      "op": "SHL"
    },
    "16436": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16438": {
      "op": "DUP3"
    },
    "16439": {
      "op": "ADD"
    },
    "16440": {
      "op": "MSTORE"
    },
    "16441": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16443": {
      "op": "ADD"
    },
    "16444": {
      "op": "SWAP1"
    },
    "16445": {
      "op": "JUMP"
    },
    "16446": {
      "op": "JUMPDEST"
    },
    "16447": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16449": {
      "op": "DUP1"
    },
    "16450": {
      "op": "DUP3"
    },
    "16451": {
      "op": "MSTORE"
    },
    "16452": {
      "op": "PUSH1",
      "value": "0x18"
    },
    "16454": {
      "op": "SWAP1"
    },
    "16455": {
      "op": "DUP3"
    },
    "16456": {
      "op": "ADD"
    },
    "16457": {
      "op": "MSTORE"
    },
    "16458": {
      "op": "PUSH32",
      "value": "0x6C7020746F6B656E206E6F742077686974656C69737465640000000000000000"
    },
    "16491": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16493": {
      "op": "DUP3"
    },
    "16494": {
      "op": "ADD"
    },
    "16495": {
      "op": "MSTORE"
    },
    "16496": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16498": {
      "op": "ADD"
    },
    "16499": {
      "op": "SWAP1"
    },
    "16500": {
      "op": "JUMP"
    },
    "16501": {
      "op": "JUMPDEST"
    },
    "16502": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16504": {
      "op": "DUP1"
    },
    "16505": {
      "op": "DUP3"
    },
    "16506": {
      "op": "MSTORE"
    },
    "16507": {
      "op": "PUSH1",
      "value": "0x17"
    },
    "16509": {
      "op": "SWAP1"
    },
    "16510": {
      "op": "DUP3"
    },
    "16511": {
      "op": "ADD"
    },
    "16512": {
      "op": "MSTORE"
    },
    "16513": {
      "op": "PUSH32",
      "value": "0x455448206D75737420636F6D652066726F6D2057455448000000000000000000"
    },
    "16546": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16548": {
      "op": "DUP3"
    },
    "16549": {
      "op": "ADD"
    },
    "16550": {
      "op": "MSTORE"
    },
    "16551": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16553": {
      "op": "ADD"
    },
    "16554": {
      "op": "SWAP1"
    },
    "16555": {
      "op": "JUMP"
    },
    "16556": {
      "op": "JUMPDEST"
    },
    "16557": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16559": {
      "op": "DUP1"
    },
    "16560": {
      "op": "DUP3"
    },
    "16561": {
      "op": "MSTORE"
    },
    "16562": {
      "op": "PUSH1",
      "value": "0x21"
    },
    "16564": {
      "op": "SWAP1"
    },
    "16565": {
      "op": "DUP3"
    },
    "16566": {
      "op": "ADD"
    },
    "16567": {
      "op": "MSTORE"
    },
    "16568": {
      "op": "PUSH32",
      "value": "0x536166654D6174683A206D756C7469706C69636174696F6E206F766572666C6F"
    },
    "16601": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16603": {
      "op": "DUP3"
    },
    "16604": {
      "op": "ADD"
    },
    "16605": {
      "op": "MSTORE"
    },
    "16606": {
      "op": "PUSH1",
      "value": "0x77"
    },
    "16608": {
      "op": "PUSH1",
      "value": "0xF8"
    },
    "16610": {
      "op": "SHL"
    },
    "16611": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16613": {
      "op": "DUP3"
    },
    "16614": {
      "op": "ADD"
    },
    "16615": {
      "op": "MSTORE"
    },
    "16616": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "16618": {
      "op": "ADD"
    },
    "16619": {
      "op": "SWAP1"
    },
    "16620": {
      "op": "JUMP"
    },
    "16621": {
      "op": "JUMPDEST"
    },
    "16622": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16624": {
      "op": "DUP1"
    },
    "16625": {
      "op": "DUP3"
    },
    "16626": {
      "op": "MSTORE"
    },
    "16627": {
      "op": "PUSH1",
      "value": "0x8"
    },
    "16629": {
      "op": "SWAP1"
    },
    "16630": {
      "op": "DUP3"
    },
    "16631": {
      "op": "ADD"
    },
    "16632": {
      "op": "MSTORE"
    },
    "16633": {
      "op": "PUSH8",
      "value": "0x14995D995C9CD959"
    },
    "16642": {
      "op": "PUSH1",
      "value": "0xC2"
    },
    "16644": {
      "op": "SHL"
    },
    "16645": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16647": {
      "op": "DUP3"
    },
    "16648": {
      "op": "ADD"
    },
    "16649": {
      "op": "MSTORE"
    },
    "16650": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16652": {
      "op": "ADD"
    },
    "16653": {
      "op": "SWAP1"
    },
    "16654": {
      "op": "JUMP"
    },
    "16655": {
      "op": "JUMPDEST"
    },
    "16656": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16658": {
      "op": "DUP1"
    },
    "16659": {
      "op": "DUP3"
    },
    "16660": {
      "op": "MSTORE"
    },
    "16661": {
      "op": "PUSH1",
      "value": "0x1D"
    },
    "16663": {
      "op": "SWAP1"
    },
    "16664": {
      "op": "DUP3"
    },
    "16665": {
      "op": "ADD"
    },
    "16666": {
      "op": "MSTORE"
    },
    "16667": {
      "op": "PUSH32",
      "value": "0x416464726573733A2063616C6C20746F206E6F6E2D636F6E7472616374000000"
    },
    "16700": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16702": {
      "op": "DUP3"
    },
    "16703": {
      "op": "ADD"
    },
    "16704": {
      "op": "MSTORE"
    },
    "16705": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16707": {
      "op": "ADD"
    },
    "16708": {
      "op": "SWAP1"
    },
    "16709": {
      "op": "JUMP"
    },
    "16710": {
      "op": "JUMPDEST"
    },
    "16711": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16713": {
      "op": "DUP1"
    },
    "16714": {
      "op": "DUP3"
    },
    "16715": {
      "op": "MSTORE"
    },
    "16716": {
      "op": "PUSH1",
      "value": "0x14"
    },
    "16718": {
      "op": "SWAP1"
    },
    "16719": {
      "op": "DUP3"
    },
    "16720": {
      "op": "ADD"
    },
    "16721": {
      "op": "MSTORE"
    },
    "16722": {
      "op": "PUSH20",
      "value": "0x696E636F727265637420756E6465726C79696E67"
    },
    "16743": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16745": {
      "op": "SHL"
    },
    "16746": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16748": {
      "op": "DUP3"
    },
    "16749": {
      "op": "ADD"
    },
    "16750": {
      "op": "MSTORE"
    },
    "16751": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16753": {
      "op": "ADD"
    },
    "16754": {
      "op": "SWAP1"
    },
    "16755": {
      "op": "JUMP"
    },
    "16756": {
      "op": "JUMPDEST"
    },
    "16757": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16759": {
      "op": "DUP1"
    },
    "16760": {
      "op": "DUP3"
    },
    "16761": {
      "op": "MSTORE"
    },
    "16762": {
      "op": "PUSH1",
      "value": "0x2A"
    },
    "16764": {
      "op": "SWAP1"
    },
    "16765": {
      "op": "DUP3"
    },
    "16766": {
      "op": "ADD"
    },
    "16767": {
      "op": "MSTORE"
    },
    "16768": {
      "op": "PUSH32",
      "value": "0x5361666545524332303A204552433230206F7065726174696F6E20646964206E"
    },
    "16801": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16803": {
      "op": "DUP3"
    },
    "16804": {
      "op": "ADD"
    },
    "16805": {
      "op": "MSTORE"
    },
    "16806": {
      "op": "PUSH10",
      "value": "0x1BDD081CDD58D8D95959"
    },
    "16817": {
      "op": "PUSH1",
      "value": "0xB2"
    },
    "16819": {
      "op": "SHL"
    },
    "16820": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16822": {
      "op": "DUP3"
    },
    "16823": {
      "op": "ADD"
    },
    "16824": {
      "op": "MSTORE"
    },
    "16825": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "16827": {
      "op": "ADD"
    },
    "16828": {
      "op": "SWAP1"
    },
    "16829": {
      "op": "JUMP"
    },
    "16830": {
      "op": "JUMPDEST"
    },
    "16831": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16833": {
      "op": "DUP1"
    },
    "16834": {
      "op": "DUP3"
    },
    "16835": {
      "op": "MSTORE"
    },
    "16836": {
      "op": "PUSH1",
      "value": "0x36"
    },
    "16838": {
      "op": "SWAP1"
    },
    "16839": {
      "op": "DUP3"
    },
    "16840": {
      "op": "ADD"
    },
    "16841": {
      "op": "MSTORE"
    },
    "16842": {
      "op": "PUSH32",
      "value": "0x5361666545524332303A20617070726F76652066726F6D206E6F6E2D7A65726F"
    },
    "16875": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16877": {
      "op": "DUP3"
    },
    "16878": {
      "op": "ADD"
    },
    "16879": {
      "op": "MSTORE"
    },
    "16880": {
      "op": "PUSH22",
      "value": "0x20746F206E6F6E2D7A65726F20616C6C6F77616E6365"
    },
    "16903": {
      "op": "PUSH1",
      "value": "0x50"
    },
    "16905": {
      "op": "SHL"
    },
    "16906": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16908": {
      "op": "DUP3"
    },
    "16909": {
      "op": "ADD"
    },
    "16910": {
      "op": "MSTORE"
    },
    "16911": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "16913": {
      "op": "ADD"
    },
    "16914": {
      "op": "SWAP1"
    },
    "16915": {
      "op": "JUMP"
    },
    "16916": {
      "op": "JUMPDEST"
    },
    "16917": {
      "op": "SWAP1"
    },
    "16918": {
      "op": "DUP2"
    },
    "16919": {
      "op": "MSTORE"
    },
    "16920": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16922": {
      "op": "ADD"
    },
    "16923": {
      "op": "SWAP1"
    },
    "16924": {
      "op": "JUMP"
    },
    "16925": {
      "op": "JUMPDEST"
    },
    "16926": {
      "op": "SWAP2"
    },
    "16927": {
      "op": "DUP3"
    },
    "16928": {
      "op": "MSTORE"
    },
    "16929": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "16931": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "16933": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "16935": {
      "op": "SHL"
    },
    "16936": {
      "op": "SUB"
    },
    "16937": {
      "op": "AND"
    },
    "16938": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16940": {
      "op": "DUP3"
    },
    "16941": {
      "op": "ADD"
    },
    "16942": {
      "op": "MSTORE"
    },
    "16943": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16945": {
      "op": "ADD"
    },
    "16946": {
      "op": "SWAP1"
    },
    "16947": {
      "op": "JUMP"
    },
    "16948": {
      "op": "JUMPDEST"
    },
    "16949": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "16951": {
      "op": "DUP7"
    },
    "16952": {
      "op": "DUP3"
    },
    "16953": {
      "op": "MSTORE"
    },
    "16954": {
      "op": "DUP6"
    },
    "16955": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "16957": {
      "op": "DUP4"
    },
    "16958": {
      "op": "ADD"
    },
    "16959": {
      "op": "MSTORE"
    },
    "16960": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "16962": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "16964": {
      "op": "DUP4"
    },
    "16965": {
      "op": "ADD"
    },
    "16966": {
      "op": "MSTORE"
    },
    "16967": {
      "op": "PUSH2",
      "value": "0x4253"
    },
    "16970": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "16972": {
      "op": "DUP4"
    },
    "16973": {
      "op": "ADD"
    },
    "16974": {
      "op": "DUP7"
    },
    "16975": {
      "op": "PUSH2",
      "value": "0x3C22"
    },
    "16978": {
      "op": "JUMP"
    },
    "16979": {
      "op": "JUMPDEST"
    },
    "16980": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "16982": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "16984": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "16986": {
      "op": "SHL"
    },
    "16987": {
      "op": "SUB"
    },
    "16988": {
      "op": "SWAP5"
    },
    "16989": {
      "op": "SWAP1"
    },
    "16990": {
      "op": "SWAP5"
    },
    "16991": {
      "op": "AND"
    },
    "16992": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "16994": {
      "op": "DUP4"
    },
    "16995": {
      "op": "ADD"
    },
    "16996": {
      "op": "MSTORE"
    },
    "16997": {
      "op": "POP"
    },
    "16998": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "17000": {
      "op": "ADD"
    },
    "17001": {
      "op": "MSTORE"
    },
    "17002": {
      "op": "SWAP4"
    },
    "17003": {
      "op": "SWAP3"
    },
    "17004": {
      "op": "POP"
    },
    "17005": {
      "op": "POP"
    },
    "17006": {
      "op": "POP"
    },
    "17007": {
      "op": "JUMP"
    },
    "17008": {
      "op": "JUMPDEST"
    },
    "17009": {
      "op": "SWAP2"
    },
    "17010": {
      "op": "DUP3"
    },
    "17011": {
      "op": "MSTORE"
    },
    "17012": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "17014": {
      "op": "DUP3"
    },
    "17015": {
      "op": "ADD"
    },
    "17016": {
      "op": "MSTORE"
    },
    "17017": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "17019": {
      "op": "ADD"
    },
    "17020": {
      "op": "SWAP1"
    },
    "17021": {
      "op": "JUMP"
    },
    "17022": {
      "op": "JUMPDEST"
    },
    "17023": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "17025": {
      "op": "MLOAD"
    },
    "17026": {
      "op": "DUP2"
    },
    "17027": {
      "op": "DUP2"
    },
    "17028": {
      "op": "ADD"
    },
    "17029": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "17038": {
      "op": "DUP2"
    },
    "17039": {
      "op": "GT"
    },
    "17040": {
      "op": "DUP3"
    },
    "17041": {
      "op": "DUP3"
    },
    "17042": {
      "op": "LT"
    },
    "17043": {
      "op": "OR"
    },
    "17044": {
      "op": "ISZERO"
    },
    "17045": {
      "op": "PUSH2",
      "value": "0x429D"
    },
    "17048": {
      "op": "JUMPI"
    },
    "17049": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "17051": {
      "op": "DUP1"
    },
    "17052": {
      "op": "REVERT"
    },
    "17053": {
      "op": "JUMPDEST"
    },
    "17054": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "17056": {
      "op": "MSTORE"
    },
    "17057": {
      "op": "SWAP2"
    },
    "17058": {
      "op": "SWAP1"
    },
    "17059": {
      "op": "POP"
    },
    "17060": {
      "op": "JUMP"
    },
    "17061": {
      "op": "JUMPDEST"
    },
    "17062": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "17064": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "17073": {
      "op": "DUP3"
    },
    "17074": {
      "op": "GT"
    },
    "17075": {
      "op": "ISZERO"
    },
    "17076": {
      "op": "PUSH2",
      "value": "0x42BB"
    },
    "17079": {
      "op": "JUMPI"
    },
    "17080": {
      "op": "DUP1"
    },
    "17081": {
      "op": "DUP2"
    },
    "17082": {
      "op": "REVERT"
    },
    "17083": {
      "op": "JUMPDEST"
    },
    "17084": {
      "op": "POP"
    },
    "17085": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "17087": {
      "op": "SWAP1"
    },
    "17088": {
      "op": "DUP2"
    },
    "17089": {
      "op": "MUL"
    },
    "17090": {
      "op": "ADD"
    },
    "17091": {
      "op": "SWAP1"
    },
    "17092": {
      "op": "JUMP"
    },
    "17093": {
      "op": "JUMPDEST"
    },
    "17094": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "17096": {
      "op": "JUMPDEST"
    },
    "17097": {
      "op": "DUP4"
    },
    "17098": {
      "op": "DUP2"
    },
    "17099": {
      "op": "LT"
    },
    "17100": {
      "op": "ISZERO"
    },
    "17101": {
      "op": "PUSH2",
      "value": "0x42E0"
    },
    "17104": {
      "op": "JUMPI"
    },
    "17105": {
      "op": "DUP2"
    },
    "17106": {
      "op": "DUP2"
    },
    "17107": {
      "op": "ADD"
    },
    "17108": {
      "op": "MLOAD"
    },
    "17109": {
      "op": "DUP4"
    },
    "17110": {
      "op": "DUP3"
    },
    "17111": {
      "op": "ADD"
    },
    "17112": {
      "op": "MSTORE"
    },
    "17113": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "17115": {
      "op": "ADD"
    },
    "17116": {
      "op": "PUSH2",
      "value": "0x42C8"
    },
    "17119": {
      "op": "JUMP"
    },
    "17120": {
      "op": "JUMPDEST"
    },
    "17121": {
      "op": "DUP4"
    },
    "17122": {
      "op": "DUP2"
    },
    "17123": {
      "op": "GT"
    },
    "17124": {
      "op": "ISZERO"
    },
    "17125": {
      "op": "PUSH2",
      "value": "0x471"
    },
    "17128": {
      "op": "JUMPI"
    },
    "17129": {
      "op": "POP"
    },
    "17130": {
      "op": "POP"
    },
    "17131": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "17133": {
      "op": "SWAP2"
    },
    "17134": {
      "op": "ADD"
    },
    "17135": {
      "op": "MSTORE"
    },
    "17136": {
      "op": "JUMP"
    },
    "17137": {
      "op": "JUMPDEST"
    },
    "17138": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "17140": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "17142": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "17144": {
      "op": "SHL"
    },
    "17145": {
      "op": "SUB"
    },
    "17146": {
      "op": "DUP2"
    },
    "17147": {
      "op": "AND"
    },
    "17148": {
      "op": "DUP2"
    },
    "17149": {
      "op": "EQ"
    },
    "17150": {
      "op": "PUSH2",
      "value": "0x2FA6"
    },
    "17153": {
      "op": "JUMPI"
    },
    "17154": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "17156": {
      "op": "DUP1"
    },
    "17157": {
      "op": "REVERT"
    },
    "17158": {
      "op": "JUMPDEST"
    },
    "17159": {
      "op": "DUP1"
    },
    "17160": {
      "op": "ISZERO"
    },
    "17161": {
      "op": "ISZERO"
    },
    "17162": {
      "op": "DUP2"
    },
    "17163": {
      "op": "EQ"
    },
    "17164": {
      "op": "PUSH2",
      "value": "0x2FA6"
    },
    "17167": {
      "op": "JUMPI"
    },
    "17168": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "17170": {
      "op": "DUP1"
    },
    "17171": {
      "op": "REVERT"
    },
    "17172": {
      "op": "JUMPDEST"
    },
    "17173": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "17175": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "17177": {
      "op": "PUSH1",
      "value": "0x70"
    },
    "17179": {
      "op": "SHL"
    },
    "17180": {
      "op": "SUB"
    },
    "17181": {
      "op": "DUP2"
    },
    "17182": {
      "op": "AND"
    },
    "17183": {
      "op": "DUP2"
    },
    "17184": {
      "op": "EQ"
    },
    "17185": {
      "op": "PUSH2",
      "value": "0x2FA6"
    },
    "17188": {
      "op": "JUMPI"
    },
    "17189": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "17191": {
      "op": "DUP1"
    },
    "17192": {
      "op": "REVERT"
    }
  },
  "sha1": "15418cba897fc427f3f71ef27dd923db2f35979b",
  "source": "// SPDX-License-Identifier: MIT\n\npragma solidity 0.6.12;\npragma experimental ABIEncoderV2;\n\nimport 'OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/token/ERC20/IERC20.sol';\nimport 'OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/math/SafeMath.sol';\n\nimport './WhitelistSpell.sol';\nimport '../utils/HomoraMath.sol';\nimport '../../interfaces/IUniswapV2Factory.sol';\nimport '../../interfaces/IUniswapV2Router02.sol';\nimport '../../interfaces/IUniswapV2Pair.sol';\nimport '../../interfaces/IWStakingRewards.sol';\n\ncontract UniswapV2SpellV1 is WhitelistSpell {\n  using SafeMath for uint;\n  using HomoraMath for uint;\n\n  IUniswapV2Factory public immutable factory; // Uniswap factory\n  IUniswapV2Router02 public immutable router; // Uniswap router\n\n  mapping(address => mapping(address => address)) public pairs; // Mapping from tokenA to (mapping from tokenB to LP token)\n\n  constructor(\n    IBank _bank,\n    address _werc20,\n    IUniswapV2Router02 _router\n  ) public WhitelistSpell(_bank, _werc20, _router.WETH()) {\n    router = _router;\n    factory = IUniswapV2Factory(_router.factory());\n  }\n\n  /// @dev Return the LP token for the token pairs (can be in any order)\n  /// @param tokenA Token A to get LP token\n  /// @param tokenB Token B to get LP token\n  function getAndApprovePair(address tokenA, address tokenB) public returns (address) {\n    address lp = pairs[tokenA][tokenB];\n    if (lp == address(0)) {\n      lp = factory.getPair(tokenA, tokenB);\n      require(lp != address(0), 'no lp token');\n      ensureApprove(tokenA, address(router));\n      ensureApprove(tokenB, address(router));\n      ensureApprove(lp, address(router));\n      pairs[tokenA][tokenB] = lp;\n      pairs[tokenB][tokenA] = lp;\n    }\n    return lp;\n  }\n\n  /// @dev Compute optimal deposit amount\n  /// @param amtA amount of token A desired to deposit\n  /// @param amtB amount of token B desired to deposit\n  /// @param resA amount of token A in reserve\n  /// @param resB amount of token B in reserve\n  function optimalDeposit(\n    uint amtA,\n    uint amtB,\n    uint resA,\n    uint resB\n  ) internal pure returns (uint swapAmt, bool isReversed) {\n    if (amtA.mul(resB) >= amtB.mul(resA)) {\n      swapAmt = _optimalDepositA(amtA, amtB, resA, resB);\n      isReversed = false;\n    } else {\n      swapAmt = _optimalDepositA(amtB, amtA, resB, resA);\n      isReversed = true;\n    }\n  }\n\n  /// @dev Compute optimal deposit amount helper.\n  /// @param amtA amount of token A desired to deposit\n  /// @param amtB amount of token B desired to deposit\n  /// @param resA amount of token A in reserve\n  /// @param resB amount of token B in reserve\n  /// Formula: https://blog.alphafinance.io/byot/\n  function _optimalDepositA(\n    uint amtA,\n    uint amtB,\n    uint resA,\n    uint resB\n  ) internal pure returns (uint) {\n    require(amtA.mul(resB) >= amtB.mul(resA), 'Reversed');\n    uint a = 997;\n    uint b = uint(1997).mul(resA);\n    uint _c = (amtA.mul(resB)).sub(amtB.mul(resA));\n    uint c = _c.mul(1000).div(amtB.add(resB)).mul(resA);\n    uint d = a.mul(c).mul(4);\n    uint e = HomoraMath.sqrt(b.mul(b).add(d));\n    uint numerator = e.sub(b);\n    uint denominator = a.mul(2);\n    return numerator.div(denominator);\n  }\n\n  struct Amounts {\n    uint amtAUser; // Supplied tokenA amount\n    uint amtBUser; // Supplied tokenB amount\n    uint amtLPUser; // Supplied LP token amount\n    uint amtABorrow; // Borrow tokenA amount\n    uint amtBBorrow; // Borrow tokenB amount\n    uint amtLPBorrow; // Borrow LP token amount\n    uint amtAMin; // Desired tokenA amount (slippage control)\n    uint amtBMin; // Desired tokenB amount (slippage control)\n  }\n\n  /// @dev Add liquidity to Uniswap pool\n  /// @param tokenA Token A for the pair\n  /// @param tokenB Token B for the pair\n  /// @param amt Amounts of tokens to supply, borrow, and get.\n  function addLiquidityInternal(\n    address tokenA,\n    address tokenB,\n    Amounts calldata amt,\n    address lp\n  ) internal {\n    require(whitelistedLpTokens[lp], 'lp token not whitelisted');\n\n    // 1. Get user input amounts\n    doTransmitETH();\n    doTransmit(tokenA, amt.amtAUser);\n    doTransmit(tokenB, amt.amtBUser);\n    doTransmit(lp, amt.amtLPUser);\n\n    // 2. Borrow specified amounts\n    doBorrow(tokenA, amt.amtABorrow);\n    doBorrow(tokenB, amt.amtBBorrow);\n    doBorrow(lp, amt.amtLPBorrow);\n\n    // 3. Calculate optimal swap amount\n    uint swapAmt;\n    bool isReversed;\n    {\n      uint amtA = IERC20(tokenA).balanceOf(address(this));\n      uint amtB = IERC20(tokenB).balanceOf(address(this));\n      uint resA;\n      uint resB;\n      if (IUniswapV2Pair(lp).token0() == tokenA) {\n        (resA, resB, ) = IUniswapV2Pair(lp).getReserves();\n      } else {\n        (resB, resA, ) = IUniswapV2Pair(lp).getReserves();\n      }\n      (swapAmt, isReversed) = optimalDeposit(amtA, amtB, resA, resB);\n    }\n\n    // 4. Swap optimal amount\n    if (swapAmt > 0) {\n      address[] memory path = new address[](2);\n      (path[0], path[1]) = isReversed ? (tokenB, tokenA) : (tokenA, tokenB);\n      router.swapExactTokensForTokens(swapAmt, 0, path, address(this), block.timestamp);\n    }\n\n    // 5. Add liquidity\n    uint balA = IERC20(tokenA).balanceOf(address(this));\n    uint balB = IERC20(tokenB).balanceOf(address(this));\n    if (balA > 0 || balB > 0) {\n      router.addLiquidity(\n        tokenA,\n        tokenB,\n        balA,\n        balB,\n        amt.amtAMin,\n        amt.amtBMin,\n        address(this),\n        block.timestamp\n      );\n    }\n  }\n\n  /// @dev Add liquidity to Uniswap pool, with no staking rewards (use WERC20 wrapper)\n  /// @param tokenA Token A for the pair\n  /// @param tokenB Token B for the pair\n  /// @param amt Amounts of tokens to supply, borrow, and get.\n  function addLiquidityWERC20(\n    address tokenA,\n    address tokenB,\n    Amounts calldata amt\n  ) external payable {\n    address lp = getAndApprovePair(tokenA, tokenB);\n    // 1-5. add liquidity\n    addLiquidityInternal(tokenA, tokenB, amt, lp);\n\n    // 6. Put collateral\n    doPutCollateral(lp, IERC20(lp).balanceOf(address(this)));\n\n    // 7. Refund leftovers to users\n    doRefundETH();\n    doRefund(tokenA);\n    doRefund(tokenB);\n  }\n\n  /// @dev Add liquidity to Uniswap pool, with staking rewards\n  /// @param tokenA Token A for the pair\n  /// @param tokenB Token B for the pair\n  /// @param amt Amounts of tokens to supply, borrow, and get.\n  /// @param wstaking Wrapped staking rewards address\n  function addLiquidityWStakingRewards(\n    address tokenA,\n    address tokenB,\n    Amounts calldata amt,\n    address wstaking\n  ) external payable {\n    address lp = getAndApprovePair(tokenA, tokenB);\n    address reward = IWStakingRewards(wstaking).reward();\n\n    // 1-5. add liquidity\n    addLiquidityInternal(tokenA, tokenB, amt, lp);\n\n    // 6. Take out collateral\n    (, address collToken, uint collId, uint collSize) = bank.getCurrentPositionInfo();\n    if (collSize > 0) {\n      require(IWStakingRewards(collToken).getUnderlyingToken(collId) == lp, 'incorrect underlying');\n      require(collToken == wstaking, 'collateral token & wstaking mismatched');\n      bank.takeCollateral(wstaking, collId, collSize);\n      IWStakingRewards(wstaking).burn(collId, collSize);\n    }\n\n    // 7. Put collateral\n    ensureApprove(lp, wstaking);\n    uint amount = IERC20(lp).balanceOf(address(this));\n    uint id = IWStakingRewards(wstaking).mint(amount);\n    if (!IWStakingRewards(wstaking).isApprovedForAll(address(this), address(bank))) {\n      IWStakingRewards(wstaking).setApprovalForAll(address(bank), true);\n    }\n    bank.putCollateral(address(wstaking), id, amount);\n\n    // 8. Refund leftovers to users\n    doRefundETH();\n    doRefund(tokenA);\n    doRefund(tokenB);\n\n    // 9. Refund reward\n    doRefund(reward);\n  }\n\n  struct RepayAmounts {\n    uint amtLPTake; // Take out LP token amount (from Homora)\n    uint amtLPWithdraw; // Withdraw LP token amount (back to caller)\n    uint amtARepay; // Repay tokenA amount\n    uint amtBRepay; // Repay tokenB amount\n    uint amtLPRepay; // Repay LP token amount\n    uint amtAMin; // Desired tokenA amount\n    uint amtBMin; // Desired tokenB amount\n  }\n\n  /// @dev Remove liquidity from Uniswap pool\n  /// @param tokenA Token A for the pair\n  /// @param tokenB Token B for the pair\n  /// @param amt Amounts of tokens to take out, withdraw, repay, and get.\n  function removeLiquidityInternal(\n    address tokenA,\n    address tokenB,\n    RepayAmounts calldata amt,\n    address lp\n  ) internal {\n    require(whitelistedLpTokens[lp], 'lp token not whitelisted');\n    uint positionId = bank.POSITION_ID();\n\n    uint amtARepay = amt.amtARepay;\n    uint amtBRepay = amt.amtBRepay;\n    uint amtLPRepay = amt.amtLPRepay;\n\n    // 2. Compute repay amount if MAX_INT is supplied (max debt)\n    if (amtARepay == uint(-1)) {\n      amtARepay = bank.borrowBalanceCurrent(positionId, tokenA);\n    }\n    if (amtBRepay == uint(-1)) {\n      amtBRepay = bank.borrowBalanceCurrent(positionId, tokenB);\n    }\n    if (amtLPRepay == uint(-1)) {\n      amtLPRepay = bank.borrowBalanceCurrent(positionId, lp);\n    }\n\n    // 3. Compute amount to actually remove\n    uint amtLPToRemove = IERC20(lp).balanceOf(address(this)).sub(amt.amtLPWithdraw);\n\n    // 4. Remove liquidity\n    uint amtA;\n    uint amtB;\n    if (amtLPToRemove > 0) {\n      (amtA, amtB) = router.removeLiquidity(\n        tokenA,\n        tokenB,\n        amtLPToRemove,\n        0,\n        0,\n        address(this),\n        block.timestamp\n      );\n    }\n\n    // 5. MinimizeTrading\n    uint amtADesired = amtARepay.add(amt.amtAMin);\n    uint amtBDesired = amtBRepay.add(amt.amtBMin);\n\n    if (amtA < amtADesired && amtB > amtBDesired) {\n      address[] memory path = new address[](2);\n      (path[0], path[1]) = (tokenB, tokenA);\n      router.swapTokensForExactTokens(\n        amtADesired.sub(amtA),\n        amtB.sub(amtBDesired),\n        path,\n        address(this),\n        block.timestamp\n      );\n    } else if (amtA > amtADesired && amtB < amtBDesired) {\n      address[] memory path = new address[](2);\n      (path[0], path[1]) = (tokenA, tokenB);\n      router.swapTokensForExactTokens(\n        amtBDesired.sub(amtB),\n        amtA.sub(amtADesired),\n        path,\n        address(this),\n        block.timestamp\n      );\n    }\n\n    // 6. Repay\n    doRepay(tokenA, amtARepay);\n    doRepay(tokenB, amtBRepay);\n    doRepay(lp, amtLPRepay);\n\n    // 7. Slippage control\n    require(IERC20(tokenA).balanceOf(address(this)) >= amt.amtAMin);\n    require(IERC20(tokenB).balanceOf(address(this)) >= amt.amtBMin);\n    require(IERC20(lp).balanceOf(address(this)) >= amt.amtLPWithdraw);\n\n    // 8. Refund leftover\n    doRefundETH();\n    doRefund(tokenA);\n    doRefund(tokenB);\n    doRefund(lp);\n  }\n\n  /// @dev Remove liquidity from Uniswap pool, with no staking rewards (use WERC20 wrapper)\n  /// @param tokenA Token A for the pair\n  /// @param tokenB Token B for the pair\n  /// @param amt Amounts of tokens to take out, withdraw, repay, and get.\n  function removeLiquidityWERC20(\n    address tokenA,\n    address tokenB,\n    RepayAmounts calldata amt\n  ) external {\n    address lp = getAndApprovePair(tokenA, tokenB);\n\n    // 1. Take out collateral\n    doTakeCollateral(lp, amt.amtLPTake);\n\n    // 2-8. remove liquidity\n    removeLiquidityInternal(tokenA, tokenB, amt, lp);\n  }\n\n  /// @dev Remove liquidity from Uniswap pool, from staking rewards\n  /// @param tokenA Token A for the pair\n  /// @param tokenB Token B for the pair\n  /// @param amt Amounts of tokens to take out, withdraw, repay, and get.\n  function removeLiquidityWStakingRewards(\n    address tokenA,\n    address tokenB,\n    RepayAmounts calldata amt,\n    address wstaking\n  ) external {\n    address lp = getAndApprovePair(tokenA, tokenB);\n    (, address collToken, uint collId, ) = bank.getCurrentPositionInfo();\n    address reward = IWStakingRewards(wstaking).reward();\n\n    // 1. Take out collateral\n    require(IWStakingRewards(collToken).getUnderlyingToken(collId) == lp, 'incorrect underlying');\n    require(collToken == wstaking, 'collateral token & wstaking mismatched');\n    bank.takeCollateral(wstaking, collId, amt.amtLPTake);\n    IWStakingRewards(wstaking).burn(collId, amt.amtLPTake);\n\n    // 2-8. remove liquidity\n    removeLiquidityInternal(tokenA, tokenB, amt, lp);\n\n    // 9. Refund reward\n    doRefund(reward);\n  }\n\n  /// @dev Harvest staking reward tokens to in-exec position's owner\n  /// @param wstaking Wrapped staking rewards address\n  function harvestWStakingRewards(address wstaking) external {\n    address reward = IWStakingRewards(wstaking).reward();\n    (, address collToken, uint collId, ) = bank.getCurrentPositionInfo();\n    address lp = IWStakingRewards(wstaking).getUnderlyingToken(collId);\n    require(whitelistedLpTokens[lp], 'lp token not whitelisted');\n    require(collToken == wstaking, 'collateral token & wstaking mismatched');\n\n    // 1. Take out collateral\n    bank.takeCollateral(wstaking, collId, uint(-1));\n    IWStakingRewards(wstaking).burn(collId, uint(-1));\n\n    // 2. put collateral\n    uint amount = IERC20(lp).balanceOf(address(this));\n    ensureApprove(lp, wstaking);\n    uint id = IWStakingRewards(wstaking).mint(amount);\n    bank.putCollateral(wstaking, id, amount);\n\n    // 3. Refund reward\n    doRefund(reward);\n  }\n}\n",
  "sourceMap": "517:12686:45:-:0;;;877:219;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;985:5;992:7;1001;-1:-1:-1;;;;;1001:12:45;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;360:5:46;367:7;376:5;768:40:1;-1:-1:-1;;;768:18:1;:40::i;:::-;282:170:7;-1:-1:-1;;;282:18:7;:170::i;:::-;-1:-1:-1;;;;;;795:12:41;;;;;;;;813:25;;;;;;;844:12;;;;;;862:36;851:5;802;862:13;:36::i;:::-;904:56;;-1:-1:-1;;;904:56:41;;-1:-1:-1;;;;;904:34:41;;;;;:56;;947:5;;955:4;;904:56;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;709:256;;;389:20:46::1;:18;;;:20;;:::i;:::-;269:145:::0;;;1032:7:45::1;-1:-1:-1::0;;;;;1023:16:45::1;;;-1:-1:-1::0;;;;;1023:16:45::1;;;;;::::0;::::1;1073:7;-1:-1:-1::0;;;;;1073:15:45::1;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1045:46;::::0;-1:-1:-1;;;;;;1045:46:45;::::1;::::0;-1:-1:-1;517:12686:45;;-1:-1:-1;;517:12686:45;1507:198:1;-1:-1:-1;;;;;;1590:25:1;;;;;1582:66;;;;-1:-1:-1;;;1582:66:1;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;;1658:33:1;:20;:33;;;;;;;;;;:40;;-1:-1:-1;;1658:40:1;1694:4;1658:40;;;1507:198::o;1230:203:41:-;-1:-1:-1;;;;;1305:15:41;;;;;;;:8;:15;;;;;;;;:24;;;;;;;;;;;;1300:129;;1339:44;1365:7;-1:-1:-1;;1346:5:41;-1:-1:-1;;;;;1339:25:41;;;;;;;:44;;;;;:::i;:::-;-1:-1:-1;;;;;1391:15:41;;;;;;;:8;:15;;;;;;;;:24;;;;;;;;;:31;;-1:-1:-1;;1391:31:41;1418:4;1391:31;;;1300:129;1230:203;;:::o;673:151:17:-;1501:13:5;;;;;;;;:33;;-1:-1:-1;1518:16:5;:14;:16::i;:::-;1501:50;;;-1:-1:-1;1539:12:5;;;;1538:13;1501:50;1493:109;;;;-1:-1:-1;;;1493:109:5;;;;;;;:::i;:::-;1636:13;;;;;;;1635:14;1659:98;;;;1693:13;:20;;-1:-1:-1;;;;1693:20:5;;;;;1727:19;1709:4;1727:19;;;1659:98;730:8:17::1;:21:::0;;-1:-1:-1;;;;;;730:21:17::1;741:10;730:21:::0;;::::1;::::0;;;::::1;::::0;;;757:15:::1;:28:::0;;-1:-1:-1;;;;;;757:28:17::1;::::0;;796:23:::1;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;;;;;;;;1783:14:5::0;1779:66;;;1813:13;:21;;-1:-1:-1;;1813:21:5;;;1779:66;673:151:17;:::o;1348:613:13:-;1713:10;;;1712:62;;-1:-1:-1;1729:39:13;;-1:-1:-1;;;1729:39:13;;-1:-1:-1;;;;;1729:15:13;;;;;:39;;1753:4;;1760:7;;1729:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:44;1712:62;1704:150;;;;-1:-1:-1;;;1704:150:13;;;;;;;:::i;:::-;1864:90;1884:5;1914:22;;;1938:7;1947:5;1891:62;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;1891:62:13;;;;;;;;;;;-1:-1:-1;;;;;;1891:62:13;;;;-1:-1:-1;;;;;1891:62:13;;;;;;;1864:19;:90;:::i;:::-;1348:613;;;:::o;1941:112:5:-;1989:4;2013:33;2040:4;2013:18;;;;;:33;;:::i;:::-;2012:34;2005:41;;1941:112;:::o;2967:751:13:-;3386:23;3412:69;3440:4;3412:69;;;;;;;;;;;;;;;;;3420:5;-1:-1:-1;;;;;3412:27:13;;;;;;;:69;;;;;:::i;:::-;3495:17;;3386:95;;-1:-1:-1;3495:21:13;3491:221;;3635:10;3624:30;;;;;;;;;;;;:::i;:::-;3616:85;;;;-1:-1:-1;;;3616:85:13;;;;;;;:::i;726:413:14:-;1086:20;1124:8;;;726:413::o;3581:193::-;3684:12;3715:52;3737:6;3745:4;3751:1;3754:12;3715:21;:52::i;:::-;3708:59;;3581:193;;;;;;:::o;4608:523::-;4735:12;4792:5;4767:21;:30;;4759:81;;;;-1:-1:-1;;;4759:81:14;;;;;;;:::i;:::-;4858:18;4869:6;4858:10;:18::i;:::-;4850:60;;;;-1:-1:-1;;;4850:60:14;;;;;;;:::i;:::-;4981:12;4995:23;5022:6;-1:-1:-1;;;;;5022:11:14;5042:5;5050:4;5022:33;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4980:75:14;;-1:-1:-1;4980:75:14;-1:-1:-1;5072:52:14;4980:75;;5111:12;5072:17;:52::i;:::-;5065:59;4608:523;-1:-1:-1;;;;;;;4608:523:14:o;7091:725::-;7206:12;7234:7;7230:580;;;-1:-1:-1;7264:10:14;7257:17;;7230:580;7375:17;;:21;7371:429;;7633:10;7627:17;7693:15;7680:10;7676:2;7672:19;7665:44;7582:145;7772:12;7765:20;;-1:-1:-1;;;7765:20:14;;;;;;;;:::i;790:263:-1:-;;905:2;893:9;884:7;880:23;876:32;873:2;;;-1:-1;;911:12;873:2;89:6;83:13;101:33;128:5;101:33;:::i;1060:257::-;;1172:2;1160:9;1151:7;1147:23;1143:32;1140:2;;;-1:-1;;1178:12;1140:2;227:6;221:13;12248:5;10810:13;10803:21;12226:5;12223:32;12213:2;;-1:-1;;12259:12;1324:621;;;;1516:2;1504:9;1495:7;1491:23;1487:32;1484:2;;;-1:-1;;1522:12;1484:2;380:6;374:13;392:48;434:5;392:48;:::i;:::-;1700:2;1750:22;;83:13;1574:89;;-1:-1;101:33;83:13;101:33;:::i;:::-;1819:2;1897:22;;558:13;1708:74;;-1:-1;576:61;558:13;576:61;:::i;:::-;1827:102;;;;1478:467;;;;;:::o;1952:263::-;;2067:2;2055:9;2046:7;2042:23;2038:32;2035:2;;;-1:-1;;2073:12;2035:2;-1:-1;727:13;;2029:186;-1:-1;2029:186::o;5678:271::-;;2762:5;10151:12;2873:52;2918:6;2913:3;2906:4;2899:5;2895:16;2873:52;:::i;:::-;2937:16;;;;;5812:137;-1:-1;;5812:137::o;5956:238::-;-1:-1;;;;;11137:54;;;;2301:58;;6091:2;6076:18;;6062:132::o;6201:333::-;-1:-1;;;;;11137:54;;;2442:37;;11137:54;;6520:2;6505:18;;2442:37;6356:2;6341:18;;6327:207::o;6541:321::-;-1:-1;;;;;11137:54;;;;2442:37;;10810:13;10803:21;6848:2;6833:18;;2556:34;6690:2;6675:18;;6661:201::o;6869:333::-;-1:-1;;;;;11137:54;;;;2442:37;;7188:2;7173:18;;5629:37;7024:2;7009:18;;6995:207::o;7209:310::-;;7356:2;7377:17;7370:47;3110:5;10151:12;10590:6;7356:2;7345:9;7341:18;10578:19;3204:52;3249:6;10618:14;7345:9;10618:14;7356:2;3230:5;3226:16;3204:52;:::i;:::-;12022:7;12006:14;-1:-1;;12002:28;3268:39;;;;10618:14;3268:39;;7327:192;-1:-1;;7327:192::o;7526:416::-;7726:2;7740:47;;;3544:2;7711:18;;;10578:19;3580:30;10618:14;;;3560:51;3630:12;;;7697:245::o;7949:416::-;8149:2;8163:47;;;3881:2;8134:18;;;10578:19;3917:34;10618:14;;;3897:55;-1:-1;;;3972:12;;;3965:30;4014:12;;;8120:245::o;8372:416::-;8572:2;8586:47;;;4265:2;8557:18;;;10578:19;4301:34;10618:14;;;4281:55;-1:-1;;;4356:12;;;4349:38;4406:12;;;8543:245::o;8795:416::-;8995:2;9009:47;;;4657:2;8980:18;;;10578:19;4693:31;10618:14;;;4673:52;4744:12;;;8966:245::o;9218:416::-;9418:2;9432:47;;;4995:2;9403:18;;;10578:19;5031:34;10618:14;;;5011:55;-1:-1;;;5086:12;;;5079:34;5132:12;;;9389:245::o;9641:416::-;9841:2;9855:47;;;5383:2;9826:18;;;10578:19;5419:34;10618:14;;;5399:55;5488:24;5474:12;;;5467:46;5532:12;;;9812:245::o;11662:268::-;11727:1;11734:101;11748:6;11745:1;11742:13;11734:101;;;11815:11;;;11809:18;11796:11;;;11789:39;11770:2;11763:10;11734:101;;;11850:6;11847:1;11844:13;11841:2;;;11727:1;11906:6;11901:3;11897:16;11890:27;11841:2;;11711:219;;;:::o;12043:117::-;-1:-1;;;;;11137:54;;12102:35;;12092:2;;12151:1;;12141:12;12086:74;517:12686:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;",
  "sourcePath": "contracts/spell/UniswapV2SpellV1.sol",
  "type": "contract"
}