{
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "supply",
          "type": "uint256"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "Approval",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "Transfer",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        }
      ],
      "name": "allowance",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "approve",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "balanceOf",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "decimals",
      "outputs": [
        {
          "internalType": "uint8",
          "name": "",
          "type": "uint8"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "subtractedValue",
          "type": "uint256"
        }
      ],
      "name": "decreaseAllowance",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "addedValue",
          "type": "uint256"
        }
      ],
      "name": "increaseAllowance",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "name",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "symbol",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "totalSupply",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "transfer",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_value",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "_data",
          "type": "bytes"
        }
      ],
      "name": "transferAndCall",
      "outputs": [
        {
          "internalType": "bool",
          "name": "success",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "transferFrom",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "allSourcePaths": {
    "12": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/token/ERC20/ERC20.sol",
    "13": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/token/ERC20/IERC20.sol",
    "14": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/token/ERC20/extensions/IERC20Metadata.sol",
    "22": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/utils/Context.sol",
    "70": "contracts/examples/mock/ChainlinkToken.sol"
  },
  "ast": {
    "absolutePath": "contracts/examples/mock/ChainlinkToken.sol",
    "exportedSymbols": {
      "ChainlinkToken": [
        2833
      ],
      "Context": [
        24074
      ],
      "ERC20": [
        21536
      ],
      "ERC677Receiver": [
        2739
      ],
      "IERC20": [
        18510
      ],
      "IERC20Metadata": [
        27166
      ]
    },
    "id": 2834,
    "license": "MIT",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 2728,
        "literals": [
          "solidity",
          "0.8",
          ".2"
        ],
        "nodeType": "PragmaDirective",
        "src": "32:22:70"
      },
      {
        "absolutePath": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/token/ERC20/ERC20.sol",
        "file": "@openzeppelin/contracts/token/ERC20/ERC20.sol",
        "id": 2729,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 2834,
        "sourceUnit": 21537,
        "src": "56:55:70",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "abstract": true,
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "contract",
        "fullyImplemented": false,
        "id": 2739,
        "linearizedBaseContracts": [
          2739
        ],
        "name": "ERC677Receiver",
        "nameLocation": "131:14:70",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "functionSelector": "a4c0ed36",
            "id": 2738,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "onTokenTransfer",
            "nameLocation": "161:15:70",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 2736,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 2731,
                  "mutability": "mutable",
                  "name": "_sender",
                  "nameLocation": "186:7:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2738,
                  "src": "178:15:70",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 2730,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "178:7:70",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 2733,
                  "mutability": "mutable",
                  "name": "_value",
                  "nameLocation": "200:6:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2738,
                  "src": "195:11:70",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 2732,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "195:4:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 2735,
                  "mutability": "mutable",
                  "name": "_data",
                  "nameLocation": "223:5:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2738,
                  "src": "208:20:70",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 2734,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "208:5:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "177:52:70"
            },
            "returnParameters": {
              "id": 2737,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "244:0:70"
            },
            "scope": 2739,
            "src": "152:93:70",
            "stateMutability": "nonpayable",
            "virtual": true,
            "visibility": "public"
          }
        ],
        "scope": 2834,
        "src": "113:134:70"
      },
      {
        "abstract": false,
        "baseContracts": [
          {
            "baseName": {
              "id": 2740,
              "name": "ERC20",
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 21536,
              "src": "276:5:70"
            },
            "id": 2741,
            "nodeType": "InheritanceSpecifier",
            "src": "276:5:70"
          }
        ],
        "contractDependencies": [
          18510,
          21536,
          24074,
          27166
        ],
        "contractKind": "contract",
        "fullyImplemented": true,
        "id": 2833,
        "linearizedBaseContracts": [
          2833,
          21536,
          27166,
          18510,
          24074
        ],
        "name": "ChainlinkToken",
        "nameLocation": "258:14:70",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "body": {
              "id": 2757,
              "nodeType": "Block",
              "src": "368:37:70",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 2753,
                        "name": "owner",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 2743,
                        "src": "384:5:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "id": 2754,
                        "name": "supply",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 2745,
                        "src": "391:6:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 2752,
                      "name": "_mint",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 21353,
                      "src": "378:5:70",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 2755,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "378:20:70",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 2756,
                  "nodeType": "ExpressionStatement",
                  "src": "378:20:70"
                }
              ]
            },
            "id": 2758,
            "implemented": true,
            "kind": "constructor",
            "modifiers": [
              {
                "arguments": [
                  {
                    "hexValue": "436861696e6c696e6b2044756d6d7920546f6b656e",
                    "id": 2748,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": true,
                    "kind": "string",
                    "lValueRequested": false,
                    "nodeType": "Literal",
                    "src": "337:23:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_stringliteral_f5764680349dd2c79b01e0cc34a69b8d81e7e56e2e2af1d9f48762f21bfc38ec",
                      "typeString": "literal_string \"Chainlink Dummy Token\""
                    },
                    "value": "Chainlink Dummy Token"
                  },
                  {
                    "hexValue": "434454",
                    "id": 2749,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": true,
                    "kind": "string",
                    "lValueRequested": false,
                    "nodeType": "Literal",
                    "src": "362:5:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_stringliteral_434eb163d5d83d0f1ffd9839d5b9c74759647f334d007a0d4510797d38b7e519",
                      "typeString": "literal_string \"CDT\""
                    },
                    "value": "CDT"
                  }
                ],
                "id": 2750,
                "modifierName": {
                  "id": 2747,
                  "name": "ERC20",
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 21536,
                  "src": "331:5:70"
                },
                "nodeType": "ModifierInvocation",
                "src": "331:37:70"
              }
            ],
            "name": "",
            "nameLocation": "-1:-1:-1",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 2746,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 2743,
                  "mutability": "mutable",
                  "name": "owner",
                  "nameLocation": "308:5:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2758,
                  "src": "300:13:70",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 2742,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "300:7:70",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 2745,
                  "mutability": "mutable",
                  "name": "supply",
                  "nameLocation": "323:6:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2758,
                  "src": "315:14:70",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 2744,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "315:7:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "299:31:70"
            },
            "returnParameters": {
              "id": 2751,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "368:0:70"
            },
            "scope": 2833,
            "src": "288:117:70",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 2789,
              "nodeType": "Block",
              "src": "513:210:70",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 2772,
                        "name": "_to",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 2760,
                        "src": "538:3:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "id": 2773,
                        "name": "_value",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 2762,
                        "src": "543:6:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "id": 2769,
                        "name": "super",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": -25,
                        "src": "523:5:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_super$_ChainlinkToken_$2833_$",
                          "typeString": "type(contract super ChainlinkToken)"
                        }
                      },
                      "id": 2771,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "transfer",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 21074,
                      "src": "523:14:70",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$",
                        "typeString": "function (address,uint256) returns (bool)"
                      }
                    },
                    "id": 2774,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "523:27:70",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 2775,
                  "nodeType": "ExpressionStatement",
                  "src": "523:27:70"
                },
                {
                  "condition": {
                    "arguments": [
                      {
                        "id": 2777,
                        "name": "_to",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 2760,
                        "src": "629:3:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 2776,
                      "name": "isContract",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 2832,
                      "src": "618:10:70",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$",
                        "typeString": "function (address) view returns (bool)"
                      }
                    },
                    "id": 2778,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "618:15:70",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 2786,
                  "nodeType": "IfStatement",
                  "src": "614:82:70",
                  "trueBody": {
                    "id": 2785,
                    "nodeType": "Block",
                    "src": "635:61:70",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "id": 2780,
                              "name": "_to",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 2760,
                              "src": "666:3:70",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            },
                            {
                              "id": 2781,
                              "name": "_value",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 2762,
                              "src": "671:6:70",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "id": 2782,
                              "name": "_data",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 2764,
                              "src": "679:5:70",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_calldata_ptr",
                                "typeString": "bytes calldata"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              },
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_bytes_calldata_ptr",
                                "typeString": "bytes calldata"
                              }
                            ],
                            "id": 2779,
                            "name": "contractFallback",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 2816,
                            "src": "649:16:70",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_calldata_ptr_$returns$__$",
                              "typeString": "function (address,uint256,bytes calldata)"
                            }
                          },
                          "id": 2783,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "649:36:70",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 2784,
                        "nodeType": "ExpressionStatement",
                        "src": "649:36:70"
                      }
                    ]
                  }
                },
                {
                  "expression": {
                    "hexValue": "74727565",
                    "id": 2787,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": true,
                    "kind": "bool",
                    "lValueRequested": false,
                    "nodeType": "Literal",
                    "src": "712:4:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    },
                    "value": "true"
                  },
                  "functionReturnParameters": 2768,
                  "id": 2788,
                  "nodeType": "Return",
                  "src": "705:11:70"
                }
              ]
            },
            "functionSelector": "4000aea0",
            "id": 2790,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "transferAndCall",
            "nameLocation": "420:15:70",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 2765,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 2760,
                  "mutability": "mutable",
                  "name": "_to",
                  "nameLocation": "444:3:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2790,
                  "src": "436:11:70",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 2759,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "436:7:70",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 2762,
                  "mutability": "mutable",
                  "name": "_value",
                  "nameLocation": "454:6:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2790,
                  "src": "449:11:70",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 2761,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "449:4:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 2764,
                  "mutability": "mutable",
                  "name": "_data",
                  "nameLocation": "477:5:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2790,
                  "src": "462:20:70",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 2763,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "462:5:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "435:48:70"
            },
            "returnParameters": {
              "id": 2768,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 2767,
                  "mutability": "mutable",
                  "name": "success",
                  "nameLocation": "505:7:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2790,
                  "src": "500:12:70",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 2766,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "500:4:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "499:14:70"
            },
            "scope": 2833,
            "src": "411:312:70",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 2815,
              "nodeType": "Block",
              "src": "811:123:70",
              "statements": [
                {
                  "assignments": [
                    2801
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 2801,
                      "mutability": "mutable",
                      "name": "receiver",
                      "nameLocation": "836:8:70",
                      "nodeType": "VariableDeclaration",
                      "scope": 2815,
                      "src": "821:23:70",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_contract$_ERC677Receiver_$2739",
                        "typeString": "contract ERC677Receiver"
                      },
                      "typeName": {
                        "id": 2800,
                        "nodeType": "UserDefinedTypeName",
                        "pathNode": {
                          "id": 2799,
                          "name": "ERC677Receiver",
                          "nodeType": "IdentifierPath",
                          "referencedDeclaration": 2739,
                          "src": "821:14:70"
                        },
                        "referencedDeclaration": 2739,
                        "src": "821:14:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_ERC677Receiver_$2739",
                          "typeString": "contract ERC677Receiver"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 2805,
                  "initialValue": {
                    "arguments": [
                      {
                        "id": 2803,
                        "name": "_to",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 2792,
                        "src": "862:3:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "id": 2802,
                      "name": "ERC677Receiver",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 2739,
                      "src": "847:14:70",
                      "typeDescriptions": {
                        "typeIdentifier": "t_type$_t_contract$_ERC677Receiver_$2739_$",
                        "typeString": "type(contract ERC677Receiver)"
                      }
                    },
                    "id": 2804,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "typeConversion",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "847:19:70",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_ERC677Receiver_$2739",
                      "typeString": "contract ERC677Receiver"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "821:45:70"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "expression": {
                          "id": 2809,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": -15,
                          "src": "901:3:70",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 2810,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "src": "901:10:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "id": 2811,
                        "name": "_value",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 2794,
                        "src": "913:6:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "id": 2812,
                        "name": "_data",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 2796,
                        "src": "921:5:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_calldata_ptr",
                          "typeString": "bytes calldata"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_bytes_calldata_ptr",
                          "typeString": "bytes calldata"
                        }
                      ],
                      "expression": {
                        "id": 2806,
                        "name": "receiver",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 2801,
                        "src": "876:8:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_contract$_ERC677Receiver_$2739",
                          "typeString": "contract ERC677Receiver"
                        }
                      },
                      "id": 2808,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "onTokenTransfer",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 2738,
                      "src": "876:24:70",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$",
                        "typeString": "function (address,uint256,bytes memory) external"
                      }
                    },
                    "id": 2813,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "876:51:70",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 2814,
                  "nodeType": "ExpressionStatement",
                  "src": "876:51:70"
                }
              ]
            },
            "id": 2816,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "contractFallback",
            "nameLocation": "738:16:70",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 2797,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 2792,
                  "mutability": "mutable",
                  "name": "_to",
                  "nameLocation": "763:3:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2816,
                  "src": "755:11:70",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 2791,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "755:7:70",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 2794,
                  "mutability": "mutable",
                  "name": "_value",
                  "nameLocation": "773:6:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2816,
                  "src": "768:11:70",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 2793,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "768:4:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 2796,
                  "mutability": "mutable",
                  "name": "_data",
                  "nameLocation": "796:5:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2816,
                  "src": "781:20:70",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 2795,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "781:5:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "754:48:70"
            },
            "returnParameters": {
              "id": 2798,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "811:0:70"
            },
            "scope": 2833,
            "src": "729:205:70",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "private"
          },
          {
            "body": {
              "id": 2831,
              "nodeType": "Block",
              "src": "1011:105:70",
              "statements": [
                {
                  "assignments": [
                    2824
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 2824,
                      "mutability": "mutable",
                      "name": "length",
                      "nameLocation": "1026:6:70",
                      "nodeType": "VariableDeclaration",
                      "scope": 2831,
                      "src": "1021:11:70",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 2823,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "1021:4:70",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 2825,
                  "nodeType": "VariableDeclarationStatement",
                  "src": "1021:11:70"
                },
                {
                  "AST": {
                    "nodeType": "YulBlock",
                    "src": "1051:32:70",
                    "statements": [
                      {
                        "nodeType": "YulAssignment",
                        "src": "1053:28:70",
                        "value": {
                          "arguments": [
                            {
                              "name": "_addr",
                              "nodeType": "YulIdentifier",
                              "src": "1075:5:70"
                            }
                          ],
                          "functionName": {
                            "name": "extcodesize",
                            "nodeType": "YulIdentifier",
                            "src": "1063:11:70"
                          },
                          "nodeType": "YulFunctionCall",
                          "src": "1063:18:70"
                        },
                        "variableNames": [
                          {
                            "name": "length",
                            "nodeType": "YulIdentifier",
                            "src": "1053:6:70"
                          }
                        ]
                      }
                    ]
                  },
                  "evmVersion": "istanbul",
                  "externalReferences": [
                    {
                      "declaration": 2818,
                      "isOffset": false,
                      "isSlot": false,
                      "src": "1075:5:70",
                      "valueSize": 1
                    },
                    {
                      "declaration": 2824,
                      "isOffset": false,
                      "isSlot": false,
                      "src": "1053:6:70",
                      "valueSize": 1
                    }
                  ],
                  "id": 2826,
                  "nodeType": "InlineAssembly",
                  "src": "1042:41:70"
                },
                {
                  "expression": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 2829,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 2827,
                      "name": "length",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 2824,
                      "src": "1099:6:70",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "hexValue": "30",
                      "id": 2828,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "1108:1:70",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "1099:10:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "functionReturnParameters": 2822,
                  "id": 2830,
                  "nodeType": "Return",
                  "src": "1092:17:70"
                }
              ]
            },
            "id": 2832,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "isContract",
            "nameLocation": "949:10:70",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 2819,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 2818,
                  "mutability": "mutable",
                  "name": "_addr",
                  "nameLocation": "968:5:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2832,
                  "src": "960:13:70",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 2817,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "960:7:70",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "959:15:70"
            },
            "returnParameters": {
              "id": 2822,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 2821,
                  "mutability": "mutable",
                  "name": "hasCode",
                  "nameLocation": "1002:7:70",
                  "nodeType": "VariableDeclaration",
                  "scope": 2832,
                  "src": "997:12:70",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 2820,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "997:4:70",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "996:14:70"
            },
            "scope": 2833,
            "src": "940:176:70",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "private"
          }
        ],
        "scope": 2834,
        "src": "249:869:70"
      }
    ],
    "src": "32:1087:70"
  },
  "bytecode": "60806040523480156200001157600080fd5b5060405162000d0338038062000d0383398101604081905262000034916200025f565b6040518060400160405280601581526020017f436861696e6c696e6b2044756d6d7920546f6b656e00000000000000000000008152506040518060400160405280600381526020016210d11560ea1b81525081600390805190602001906200009e929190620001b9565b508051620000b4906004906020840190620001b9565b505050620000c98282620000d160201b60201c565b5050620002fb565b6001600160a01b0382166200012c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b806002600082825462000140919062000299565b90915550506001600160a01b038216600090815260208190526040812080548392906200016f90849062000299565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b828054620001c790620002be565b90600052602060002090601f016020900481019282620001eb576000855562000236565b82601f106200020657805160ff191683800117855562000236565b8280016001018555821562000236579182015b828111156200023657825182559160200191906001019062000219565b506200024492915062000248565b5090565b5b8082111562000244576000815560010162000249565b6000806040838503121562000272578182fd5b82516001600160a01b038116811462000289578283fd5b6020939093015192949293505050565b60008219821115620002b957634e487b7160e01b81526011600452602481fd5b500190565b600281046001821680620002d357607f821691505b60208210811415620002f557634e487b7160e01b600052602260045260246000fd5b50919050565b6109f8806200030b6000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80634000aea0116100715780634000aea01461014157806370a082311461015457806395d89b4114610167578063a457c2d71461016f578063a9059cbb14610182578063dd62ed3e14610195576100b4565b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f578063395093511461012e575b600080fd5b6100c16101a8565b6040516100ce9190610910565b60405180910390f35b6100ea6100e536600461081d565b61023a565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a3660046107e2565b610252565b604051601281526020016100ce565b6100ea61013c36600461081d565b610276565b6100ea61014f366004610846565b610298565b6100fe61016236600461078f565b6102b8565b6100c16102d7565b6100ea61017d36600461081d565b6102e6565b6100ea61019036600461081d565b610366565b6100fe6101a33660046107b0565b610374565b6060600380546101b790610987565b80601f01602080910402602001604051908101604052809291908181526020018280546101e390610987565b80156102305780601f1061020557610100808354040283529160200191610230565b820191906000526020600020905b81548152906001019060200180831161021357829003601f168201915b5050505050905090565b60003361024881858561039f565b5060019392505050565b6000336102608582856104c3565b61026b85858561053d565b506001949350505050565b6000336102488185856102898383610374565b6102939190610963565b61039f565b60006102a48585610366565b50843b1561026b5761026b8585858561070b565b6001600160a01b0381166000908152602081905260409020545b919050565b6060600480546101b790610987565b600033816102f48286610374565b9050838110156103595760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61026b828686840361039f565b60003361024881858561053d565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166104015760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610350565b6001600160a01b0382166104625760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610350565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006104cf8484610374565b90506000198114610537578181101561052a5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610350565b610537848484840361039f565b50505050565b6001600160a01b0383166105a15760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610350565b6001600160a01b0382166106035760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610350565b6001600160a01b0383166000908152602081905260409020548181101561067b5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610350565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906106b2908490610963565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516106fe91815260200190565b60405180910390a3610537565b604051635260769b60e11b815284906001600160a01b0382169063a4c0ed369061073f9033908890889088906004016108c8565b600060405180830381600087803b15801561075957600080fd5b505af115801561076d573d6000803e3d6000fd5b505050505050505050565b80356001600160a01b03811681146102d257600080fd5b6000602082840312156107a0578081fd5b6107a982610778565b9392505050565b600080604083850312156107c2578081fd5b6107cb83610778565b91506107d960208401610778565b90509250929050565b6000806000606084860312156107f6578081fd5b6107ff84610778565b925061080d60208501610778565b9150604084013590509250925092565b6000806040838503121561082f578182fd5b61083883610778565b946020939093013593505050565b6000806000806060858703121561085b578081fd5b61086485610778565b935060208501359250604085013567ffffffffffffffff80821115610887578283fd5b818701915087601f83011261089a578283fd5b8135818111156108a8578384fd5b8860208285010111156108b9578384fd5b95989497505060200194505050565b6001600160a01b0385168152602081018490526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b6000602080835283518082850152825b8181101561093c57858101830151858201604001528201610920565b8181111561094d5783604083870101525b50601f01601f1916929092016040019392505050565b6000821982111561098257634e487b7160e01b81526011600452602481fd5b500190565b60028104600182168061099b57607f821691505b602082108114156109bc57634e487b7160e01b600052602260045260246000fd5b5091905056fea2646970667358221220d166ec7d126516a8a241b1edfa4339b24ab63927004b1705552ea6e7af7f370e64736f6c63430008020033",
  "bytecodeSha1": "1ca3891d8025eea5a94d1b45dd346a40547a32da",
  "compiler": {
    "evm_version": "istanbul",
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "version": "0.8.2+commit.661d1103"
  },
  "contractName": "ChainlinkToken",
  "coverageMap": {
    "branches": {
      "12": {
        "ERC20._approve": {
          "34": [
            10241,
            10260,
            true
          ],
          "35": [
            10319,
            10340,
            true
          ]
        },
        "ERC20._spendAllowance": {
          "36": [
            10957,
            10994,
            false
          ],
          "37": [
            11018,
            11044,
            true
          ]
        },
        "ERC20._transfer": {
          "38": [
            7601,
            7619,
            true
          ],
          "39": [
            7679,
            7695,
            true
          ],
          "40": [
            7850,
            7871,
            true
          ]
        },
        "ERC20.decreaseAllowance": {
          "33": [
            6811,
            6846,
            true
          ]
        }
      },
      "13": {},
      "14": {},
      "22": {},
      "70": {}
    },
    "statements": {
      "12": {
        "ERC20._approve": {
          "19": [
            10233,
            10301
          ],
          "20": [
            10311,
            10379
          ],
          "21": [
            10390,
            10426
          ],
          "22": [
            10436,
            10473
          ]
        },
        "ERC20._spendAllowance": {
          "23": [
            11010,
            11078
          ],
          "24": [
            11120,
            11171
          ]
        },
        "ERC20._transfer": {
          "25": [
            7593,
            7661
          ],
          "26": [
            7671,
            7735
          ],
          "27": [
            7842,
            7914
          ],
          "28": [
            7948,
            7986
          ],
          "29": [
            8006,
            8029
          ],
          "30": [
            8040,
            8071
          ],
          "31": [
            8082,
            8119
          ]
        },
        "ERC20.allowance": {
          "18": [
            4084,
            4118
          ]
        },
        "ERC20.approve": {
          "4": [
            4570,
            4602
          ],
          "5": [
            4612,
            4623
          ]
        },
        "ERC20.balanceOf": {
          "13": [
            3501,
            3526
          ]
        },
        "ERC20.decimals": {
          "1": [
            3168,
            3177
          ]
        },
        "ERC20.decreaseAllowance": {
          "15": [
            6803,
            6888
          ],
          "16": [
            6922,
            6982
          ]
        },
        "ERC20.increaseAllowance": {
          "9": [
            6015,
            6079
          ]
        },
        "ERC20.name": {
          "2": [
            2235,
            2247
          ]
        },
        "ERC20.symbol": {
          "14": [
            2448,
            2462
          ]
        },
        "ERC20.totalSupply": {
          "0": [
            3324,
            3343
          ]
        },
        "ERC20.transfer": {
          "17": [
            3862,
            3890
          ]
        },
        "ERC20.transferFrom": {
          "6": [
            5375,
            5413
          ],
          "7": [
            5423,
            5450
          ],
          "8": [
            5460,
            5471
          ]
        }
      },
      "13": {},
      "14": {},
      "22": {
        "Context._msgSender": {
          "3": [
            712,
            729
          ]
        }
      },
      "70": {
        "ChainlinkToken.contractFallback": {
          "32": [
            876,
            927
          ]
        },
        "ChainlinkToken.isContract": {
          "11": [
            1092,
            1109
          ]
        },
        "ChainlinkToken.transferAndCall": {
          "10": [
            523,
            550
          ],
          "12": [
            649,
            685
          ]
        }
      }
    }
  },
  "dependencies": [
    "OpenZeppelin/openzeppelin-contracts@4.7.3/Context",
    "OpenZeppelin/openzeppelin-contracts@4.7.3/ERC20",
    "ERC677Receiver",
    "OpenZeppelin/openzeppelin-contracts@4.7.3/IERC20",
    "OpenZeppelin/openzeppelin-contracts@4.7.3/IERC20Metadata"
  ],
  "deployedBytecode": "608060405234801561001057600080fd5b50600436106100b45760003560e01c80634000aea0116100715780634000aea01461014157806370a082311461015457806395d89b4114610167578063a457c2d71461016f578063a9059cbb14610182578063dd62ed3e14610195576100b4565b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f578063395093511461012e575b600080fd5b6100c16101a8565b6040516100ce9190610910565b60405180910390f35b6100ea6100e536600461081d565b61023a565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a3660046107e2565b610252565b604051601281526020016100ce565b6100ea61013c36600461081d565b610276565b6100ea61014f366004610846565b610298565b6100fe61016236600461078f565b6102b8565b6100c16102d7565b6100ea61017d36600461081d565b6102e6565b6100ea61019036600461081d565b610366565b6100fe6101a33660046107b0565b610374565b6060600380546101b790610987565b80601f01602080910402602001604051908101604052809291908181526020018280546101e390610987565b80156102305780601f1061020557610100808354040283529160200191610230565b820191906000526020600020905b81548152906001019060200180831161021357829003601f168201915b5050505050905090565b60003361024881858561039f565b5060019392505050565b6000336102608582856104c3565b61026b85858561053d565b506001949350505050565b6000336102488185856102898383610374565b6102939190610963565b61039f565b60006102a48585610366565b50843b1561026b5761026b8585858561070b565b6001600160a01b0381166000908152602081905260409020545b919050565b6060600480546101b790610987565b600033816102f48286610374565b9050838110156103595760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61026b828686840361039f565b60003361024881858561053d565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166104015760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610350565b6001600160a01b0382166104625760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610350565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006104cf8484610374565b90506000198114610537578181101561052a5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610350565b610537848484840361039f565b50505050565b6001600160a01b0383166105a15760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610350565b6001600160a01b0382166106035760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610350565b6001600160a01b0383166000908152602081905260409020548181101561067b5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610350565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906106b2908490610963565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516106fe91815260200190565b60405180910390a3610537565b604051635260769b60e11b815284906001600160a01b0382169063a4c0ed369061073f9033908890889088906004016108c8565b600060405180830381600087803b15801561075957600080fd5b505af115801561076d573d6000803e3d6000fd5b505050505050505050565b80356001600160a01b03811681146102d257600080fd5b6000602082840312156107a0578081fd5b6107a982610778565b9392505050565b600080604083850312156107c2578081fd5b6107cb83610778565b91506107d960208401610778565b90509250929050565b6000806000606084860312156107f6578081fd5b6107ff84610778565b925061080d60208501610778565b9150604084013590509250925092565b6000806040838503121561082f578182fd5b61083883610778565b946020939093013593505050565b6000806000806060858703121561085b578081fd5b61086485610778565b935060208501359250604085013567ffffffffffffffff80821115610887578283fd5b818701915087601f83011261089a578283fd5b8135818111156108a8578384fd5b8860208285010111156108b9578384fd5b95989497505060200194505050565b6001600160a01b0385168152602081018490526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b6000602080835283518082850152825b8181101561093c57858101830151858201604001528201610920565b8181111561094d5783604083870101525b50601f01601f1916929092016040019392505050565b6000821982111561098257634e487b7160e01b81526011600452602481fd5b500190565b60028104600182168061099b57607f821691505b602082108114156109bc57634e487b7160e01b600052602260045260246000fd5b5091905056fea2646970667358221220d166ec7d126516a8a241b1edfa4339b24ab63927004b1705552ea6e7af7f370e64736f6c63430008020033",
  "deployedSourceMap": "249:869:70:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2156:98:12;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4433:197;;;;;;:::i;:::-;;:::i;:::-;;;2800:14:103;;2793:22;2775:41;;2763:2;2748:18;4433:197:12;2730:92:103;3244:106:12;3331:12;;3244:106;;;6370:25:103;;;6358:2;6343:18;3244:106:12;6325:76:103;5192:286:12;;;;;;:::i;:::-;;:::i;3093:91::-;;;3175:2;6548:36:103;;6536:2;6521:18;3093:91:12;6503:87:103;5873:234:12;;;;;;:::i;:::-;;:::i;411:312:70:-;;;;;;:::i;:::-;;:::i;3408:125:12:-;;;;;;:::i;:::-;;:::i;2367:102::-;;;:::i;6594:427::-;;;;;;:::i;:::-;;:::i;3729:189::-;;;;;;:::i;:::-;;:::i;3976:149::-;;;;;;:::i;:::-;;:::i;2156:98::-;2210:13;2242:5;2235:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2156:98;:::o;4433:197::-;4516:4;719:10:22;4570:32:12;719:10:22;4586:7:12;4595:6;4570:8;:32::i;:::-;-1:-1:-1;4619:4:12;;4433:197;-1:-1:-1;;;4433:197:12:o;5192:286::-;5319:4;719:10:22;5375:38:12;5391:4;719:10:22;5406:6:12;5375:15;:38::i;:::-;5423:27;5433:4;5439:2;5443:6;5423:9;:27::i;:::-;-1:-1:-1;5467:4:12;;5192:286;-1:-1:-1;;;;5192:286:12:o;5873:234::-;5961:4;719:10:22;6015:64:12;719:10:22;6031:7:12;6068:10;6040:25;719:10:22;6031:7:12;6040:9;:25::i;:::-;:38;;;;:::i;:::-;6015:8;:64::i;411:312:70:-;500:12;523:27;538:3;543:6;523:14;:27::i;:::-;-1:-1:-1;1063:18:70;;1099:10;614:82;;649:36;666:3;671:6;679:5;;649:16;:36::i;3408:125:12:-;-1:-1:-1;;;;;3508:18:12;;3482:7;3508:18;;;;;;;;;;;3408:125;;;;:::o;2367:102::-;2423:13;2455:7;2448:14;;;;;:::i;6594:427::-;6687:4;719:10:22;6687:4:12;6768:25;719:10:22;6785:7:12;6768:9;:25::i;:::-;6741:52;;6831:15;6811:16;:35;;6803:85;;;;-1:-1:-1;;;6803:85:12;;6020:2:103;6803:85:12;;;6002:21:103;6059:2;6039:18;;;6032:30;6098:34;6078:18;;;6071:62;-1:-1:-1;;;6149:18:103;;;6142:35;6194:19;;6803:85:12;;;;;;;;;6922:60;6931:5;6938:7;6966:15;6947:16;:34;6922:8;:60::i;3729:189::-;3808:4;719:10:22;3862:28:12;719:10:22;3879:2:12;3883:6;3862:9;:28::i;3976:149::-;-1:-1:-1;;;;;4091:18:12;;;4065:7;4091:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3976:149::o;10110:370::-;-1:-1:-1;;;;;10241:19:12;;10233:68;;;;-1:-1:-1;;;10233:68:12;;5615:2:103;10233:68:12;;;5597:21:103;5654:2;5634:18;;;5627:30;5693:34;5673:18;;;5666:62;-1:-1:-1;;;5744:18:103;;;5737:34;5788:19;;10233:68:12;5587:226:103;10233:68:12;-1:-1:-1;;;;;10319:21:12;;10311:68;;;;-1:-1:-1;;;10311:68:12;;4041:2:103;10311:68:12;;;4023:21:103;4080:2;4060:18;;;4053:30;4119:34;4099:18;;;4092:62;-1:-1:-1;;;4170:18:103;;;4163:32;4212:19;;10311:68:12;4013:224:103;10311:68:12;-1:-1:-1;;;;;10390:18:12;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;10441:32;;6370:25:103;;;10441:32:12;;6343:18:103;10441:32:12;;;;;;;10110:370;;;:::o;10761:441::-;10891:24;10918:25;10928:5;10935:7;10918:9;:25::i;:::-;10891:52;;-1:-1:-1;;10957:16:12;:37;10953:243;;11038:6;11018:16;:26;;11010:68;;;;-1:-1:-1;;;11010:68:12;;4444:2:103;11010:68:12;;;4426:21:103;4483:2;4463:18;;;4456:30;4522:31;4502:18;;;4495:59;4571:18;;11010:68:12;4416:179:103;11010:68:12;11120:51;11129:5;11136:7;11164:6;11145:16;:25;11120:8;:51::i;:::-;10761:441;;;;:::o;7475:651::-;-1:-1:-1;;;;;7601:18:12;;7593:68;;;;-1:-1:-1;;;7593:68:12;;5209:2:103;7593:68:12;;;5191:21:103;5248:2;5228:18;;;5221:30;5287:34;5267:18;;;5260:62;-1:-1:-1;;;5338:18:103;;;5331:35;5383:19;;7593:68:12;5181:227:103;7593:68:12;-1:-1:-1;;;;;7679:16:12;;7671:64;;;;-1:-1:-1;;;7671:64:12;;3637:2:103;7671:64:12;;;3619:21:103;3676:2;3656:18;;;3649:30;3715:34;3695:18;;;3688:62;-1:-1:-1;;;3766:18:103;;;3759:33;3809:19;;7671:64:12;3609:225:103;7671:64:12;-1:-1:-1;;;;;7817:15:12;;7795:19;7817:15;;;;;;;;;;;7850:21;;;;7842:72;;;;-1:-1:-1;;;7842:72:12;;4802:2:103;7842:72:12;;;4784:21:103;4841:2;4821:18;;;4814:30;4880:34;4860:18;;;4853:62;-1:-1:-1;;;4931:18:103;;;4924:36;4977:19;;7842:72:12;4774:228:103;7842:72:12;-1:-1:-1;;;;;7948:15:12;;;:9;:15;;;;;;;;;;;7966:20;;;7948:38;;8006:13;;;;;;;;:23;;7980:6;;7948:9;8006:23;;7980:6;;8006:23;:::i;:::-;;;;;;;;8060:2;-1:-1:-1;;;;;8045:26:12;8054:4;-1:-1:-1;;;;;8045:26:12;;8064:6;8045:26;;;;6370:25:103;;6358:2;6343:18;;6325:76;8045:26:12;;;;;;;;8082:37;11786:121;729:205:70;876:51;;-1:-1:-1;;;876:51:70;;862:3;;-1:-1:-1;;;;;876:24:70;;;;;:51;;901:10;;913:6;;921:5;;;;876:51;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;729:205;;;;;:::o;14:173:103:-;82:20;;-1:-1:-1;;;;;131:31:103;;121:42;;111:2;;177:1;174;167:12;192:196;;304:2;292:9;283:7;279:23;275:32;272:2;;;325:6;317;310:22;272:2;353:29;372:9;353:29;:::i;:::-;343:39;262:126;-1:-1:-1;;;262:126:103:o;393:270::-;;;522:2;510:9;501:7;497:23;493:32;490:2;;;543:6;535;528:22;490:2;571:29;590:9;571:29;:::i;:::-;561:39;;619:38;653:2;642:9;638:18;619:38;:::i;:::-;609:48;;480:183;;;;;:::o;668:338::-;;;;814:2;802:9;793:7;789:23;785:32;782:2;;;835:6;827;820:22;782:2;863:29;882:9;863:29;:::i;:::-;853:39;;911:38;945:2;934:9;930:18;911:38;:::i;:::-;901:48;;996:2;985:9;981:18;968:32;958:42;;772:234;;;;;:::o;1011:264::-;;;1140:2;1128:9;1119:7;1115:23;1111:32;1108:2;;;1161:6;1153;1146:22;1108:2;1189:29;1208:9;1189:29;:::i;:::-;1179:39;1265:2;1250:18;;;;1237:32;;-1:-1:-1;;;1098:177:103:o;1280:783::-;;;;;1445:2;1433:9;1424:7;1420:23;1416:32;1413:2;;;1466:6;1458;1451:22;1413:2;1494:29;1513:9;1494:29;:::i;:::-;1484:39;;1570:2;1559:9;1555:18;1542:32;1532:42;;1625:2;1614:9;1610:18;1597:32;1648:18;1689:2;1681:6;1678:14;1675:2;;;1710:6;1702;1695:22;1675:2;1753:6;1742:9;1738:22;1728:32;;1798:7;1791:4;1787:2;1783:13;1779:27;1769:2;;1825:6;1817;1810:22;1769:2;1870;1857:16;1896:2;1888:6;1885:14;1882:2;;;1917:6;1909;1902:22;1882:2;1967:7;1962:2;1953:6;1949:2;1945:15;1941:24;1938:37;1935:2;;;1993:6;1985;1978:22;1935:2;1403:660;;;;-1:-1:-1;;2029:2:103;2021:11;;-1:-1:-1;;;1403:660:103:o;2068:562::-;-1:-1:-1;;;;;2281:32:103;;2263:51;;2345:2;2330:18;;2323:34;;;2393:2;2388;2373:18;;2366:30;;;2412:18;;2405:34;;;2068:562;2432:6;2482;2476:3;2461:19;;2448:49;2517:22;;;2541:3;2513:32;;;2506:46;;;;2613:2;2592:15;;;-1:-1:-1;;2588:29:103;2573:45;2569:55;;2253:377;-1:-1:-1;;;2253:377:103:o;2827:603::-;;2968:2;2997;2986:9;2979:21;3029:6;3023:13;3072:6;3067:2;3056:9;3052:18;3045:34;3097:4;3110:140;3124:6;3121:1;3118:13;3110:140;;;3219:14;;;3215:23;;3209:30;3185:17;;;3204:2;3181:26;3174:66;3139:10;;3110:140;;;3268:6;3265:1;3262:13;3259:2;;;3338:4;3333:2;3324:6;3313:9;3309:22;3305:31;3298:45;3259:2;-1:-1:-1;3414:2:103;3393:15;-1:-1:-1;;3389:29:103;3374:45;;;;3421:2;3370:54;;2948:482;-1:-1:-1;;;2948:482:103:o;6595:229::-;;6666:1;6662:6;6659:1;6656:13;6653:2;;;-1:-1:-1;;;6692:33:103;;6748:4;6745:1;6738:15;6778:4;6699:3;6766:17;6653:2;-1:-1:-1;6809:9:103;;6643:181::o;6829:380::-;6914:1;6904:12;;6961:1;6951:12;;;6972:2;;7026:4;7018:6;7014:17;7004:27;;6972:2;7079;7071:6;7068:14;7048:18;7045:38;7042:2;;;7125:10;7120:3;7116:20;7113:1;7106:31;7160:4;7157:1;7150:15;7188:4;7185:1;7178:15;7042:2;;6884:325;;;:::o",
  "language": "Solidity",
  "natspec": {
    "kind": "dev",
    "methods": {
      "allowance(address,address)": {
        "details": "See {IERC20-allowance}."
      },
      "approve(address,uint256)": {
        "details": "See {IERC20-approve}. NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on `transferFrom`. This is semantically equivalent to an infinite approval. Requirements: - `spender` cannot be the zero address."
      },
      "balanceOf(address)": {
        "details": "See {IERC20-balanceOf}."
      },
      "decimals()": {
        "details": "Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5.05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless this function is overridden; NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}."
      },
      "decreaseAllowance(address,uint256)": {
        "details": "Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`."
      },
      "increaseAllowance(address,uint256)": {
        "details": "Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address."
      },
      "name()": {
        "details": "Returns the name of the token."
      },
      "symbol()": {
        "details": "Returns the symbol of the token, usually a shorter version of the name."
      },
      "totalSupply()": {
        "details": "See {IERC20-totalSupply}."
      },
      "transfer(address,uint256)": {
        "details": "See {IERC20-transfer}. Requirements: - `to` cannot be the zero address. - the caller must have a balance of at least `amount`."
      },
      "transferFrom(address,address,uint256)": {
        "details": "See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. NOTE: Does not update the allowance if the current allowance is the maximum `uint256`. Requirements: - `from` and `to` cannot be the zero address. - `from` must have a balance of at least `amount`. - the caller must have allowance for ``from``'s tokens of at least `amount`."
      }
    },
    "version": 1
  },
  "offset": [
    249,
    1118
  ],
  "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xB4 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x4000AEA0 GT PUSH2 0x71 JUMPI DUP1 PUSH4 0x4000AEA0 EQ PUSH2 0x141 JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x154 JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x167 JUMPI DUP1 PUSH4 0xA457C2D7 EQ PUSH2 0x16F JUMPI DUP1 PUSH4 0xA9059CBB EQ PUSH2 0x182 JUMPI DUP1 PUSH4 0xDD62ED3E EQ PUSH2 0x195 JUMPI PUSH2 0xB4 JUMP JUMPDEST DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0xB9 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0xD7 JUMPI DUP1 PUSH4 0x18160DDD EQ PUSH2 0xFA JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x10C JUMPI DUP1 PUSH4 0x313CE567 EQ PUSH2 0x11F JUMPI DUP1 PUSH4 0x39509351 EQ PUSH2 0x12E JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xC1 PUSH2 0x1A8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCE SWAP2 SWAP1 PUSH2 0x910 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xEA PUSH2 0xE5 CALLDATASIZE PUSH1 0x4 PUSH2 0x81D JUMP JUMPDEST PUSH2 0x23A JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0xCE JUMP JUMPDEST PUSH1 0x2 SLOAD JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0xCE JUMP JUMPDEST PUSH2 0xEA PUSH2 0x11A CALLDATASIZE PUSH1 0x4 PUSH2 0x7E2 JUMP JUMPDEST PUSH2 0x252 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x12 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0xCE JUMP JUMPDEST PUSH2 0xEA PUSH2 0x13C CALLDATASIZE PUSH1 0x4 PUSH2 0x81D JUMP JUMPDEST PUSH2 0x276 JUMP JUMPDEST PUSH2 0xEA PUSH2 0x14F CALLDATASIZE PUSH1 0x4 PUSH2 0x846 JUMP JUMPDEST PUSH2 0x298 JUMP JUMPDEST PUSH2 0xFE PUSH2 0x162 CALLDATASIZE PUSH1 0x4 PUSH2 0x78F JUMP JUMPDEST PUSH2 0x2B8 JUMP JUMPDEST PUSH2 0xC1 PUSH2 0x2D7 JUMP JUMPDEST PUSH2 0xEA PUSH2 0x17D CALLDATASIZE PUSH1 0x4 PUSH2 0x81D JUMP JUMPDEST PUSH2 0x2E6 JUMP JUMPDEST PUSH2 0xEA PUSH2 0x190 CALLDATASIZE PUSH1 0x4 PUSH2 0x81D JUMP JUMPDEST PUSH2 0x366 JUMP JUMPDEST PUSH2 0xFE PUSH2 0x1A3 CALLDATASIZE PUSH1 0x4 PUSH2 0x7B0 JUMP JUMPDEST PUSH2 0x374 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x3 DUP1 SLOAD PUSH2 0x1B7 SWAP1 PUSH2 0x987 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1E3 SWAP1 PUSH2 0x987 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x230 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x205 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x230 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x213 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 CALLER PUSH2 0x248 DUP2 DUP6 DUP6 PUSH2 0x39F JUMP JUMPDEST POP PUSH1 0x1 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 CALLER PUSH2 0x260 DUP6 DUP3 DUP6 PUSH2 0x4C3 JUMP JUMPDEST PUSH2 0x26B DUP6 DUP6 DUP6 PUSH2 0x53D JUMP JUMPDEST POP PUSH1 0x1 SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 CALLER PUSH2 0x248 DUP2 DUP6 DUP6 PUSH2 0x289 DUP4 DUP4 PUSH2 0x374 JUMP JUMPDEST PUSH2 0x293 SWAP2 SWAP1 PUSH2 0x963 JUMP JUMPDEST PUSH2 0x39F JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A4 DUP6 DUP6 PUSH2 0x366 JUMP JUMPDEST POP DUP5 EXTCODESIZE ISZERO PUSH2 0x26B JUMPI PUSH2 0x26B DUP6 DUP6 DUP6 DUP6 PUSH2 0x70B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 DUP1 SLOAD PUSH2 0x1B7 SWAP1 PUSH2 0x987 JUMP JUMPDEST PUSH1 0x0 CALLER DUP2 PUSH2 0x2F4 DUP3 DUP7 PUSH2 0x374 JUMP JUMPDEST SWAP1 POP DUP4 DUP2 LT ISZERO PUSH2 0x359 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x25 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x45524332303A2064656372656173656420616C6C6F77616E63652062656C6F77 PUSH1 0x44 DUP3 ADD MSTORE PUSH5 0x207A65726F PUSH1 0xD8 SHL PUSH1 0x64 DUP3 ADD MSTORE PUSH1 0x84 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x26B DUP3 DUP7 DUP7 DUP5 SUB PUSH2 0x39F JUMP JUMPDEST PUSH1 0x0 CALLER PUSH2 0x248 DUP2 DUP6 DUP6 PUSH2 0x53D JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x1 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 SWAP1 SWAP5 AND DUP3 MSTORE SWAP2 SWAP1 SWAP2 MSTORE KECCAK256 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH2 0x401 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x24 DUP1 DUP3 ADD MSTORE PUSH32 0x45524332303A20617070726F76652066726F6D20746865207A65726F20616464 PUSH1 0x44 DUP3 ADD MSTORE PUSH4 0x72657373 PUSH1 0xE0 SHL PUSH1 0x64 DUP3 ADD MSTORE PUSH1 0x84 ADD PUSH2 0x350 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH2 0x462 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x22 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x45524332303A20617070726F766520746F20746865207A65726F206164647265 PUSH1 0x44 DUP3 ADD MSTORE PUSH2 0x7373 PUSH1 0xF0 SHL PUSH1 0x64 DUP3 ADD MSTORE PUSH1 0x84 ADD PUSH2 0x350 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 DUP2 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x1 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP5 DUP8 AND DUP1 DUP5 MSTORE SWAP5 DUP3 MSTORE SWAP2 DUP3 SWAP1 KECCAK256 DUP6 SWAP1 SSTORE SWAP1 MLOAD DUP5 DUP2 MSTORE PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 SWAP2 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4CF DUP5 DUP5 PUSH2 0x374 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 NOT DUP2 EQ PUSH2 0x537 JUMPI DUP2 DUP2 LT ISZERO PUSH2 0x52A JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1D PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x45524332303A20696E73756666696369656E7420616C6C6F77616E6365000000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x350 JUMP JUMPDEST PUSH2 0x537 DUP5 DUP5 DUP5 DUP5 SUB PUSH2 0x39F JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH2 0x5A1 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x25 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x45524332303A207472616E736665722066726F6D20746865207A65726F206164 PUSH1 0x44 DUP3 ADD MSTORE PUSH5 0x6472657373 PUSH1 0xD8 SHL PUSH1 0x64 DUP3 ADD MSTORE PUSH1 0x84 ADD PUSH2 0x350 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH2 0x603 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x23 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x45524332303A207472616E7366657220746F20746865207A65726F2061646472 PUSH1 0x44 DUP3 ADD MSTORE PUSH3 0x657373 PUSH1 0xE8 SHL PUSH1 0x64 DUP3 ADD MSTORE PUSH1 0x84 ADD PUSH2 0x350 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD DUP2 DUP2 LT ISZERO PUSH2 0x67B JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x26 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x45524332303A207472616E7366657220616D6F756E7420657863656564732062 PUSH1 0x44 DUP3 ADD MSTORE PUSH6 0x616C616E6365 PUSH1 0xD0 SHL PUSH1 0x64 DUP3 ADD MSTORE PUSH1 0x84 ADD PUSH2 0x350 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 DUP6 DUP6 SUB SWAP1 SSTORE SWAP2 DUP6 AND DUP2 MSTORE SWAP1 DUP2 KECCAK256 DUP1 SLOAD DUP5 SWAP3 SWAP1 PUSH2 0x6B2 SWAP1 DUP5 SWAP1 PUSH2 0x963 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP5 PUSH1 0x40 MLOAD PUSH2 0x6FE SWAP2 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 PUSH2 0x537 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x5260769B PUSH1 0xE1 SHL DUP2 MSTORE DUP5 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND SWAP1 PUSH4 0xA4C0ED36 SWAP1 PUSH2 0x73F SWAP1 CALLER SWAP1 DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH2 0x8C8 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x759 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x76D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x2D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x7A0 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH2 0x7A9 DUP3 PUSH2 0x778 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x7C2 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH2 0x7CB DUP4 PUSH2 0x778 JUMP JUMPDEST SWAP2 POP PUSH2 0x7D9 PUSH1 0x20 DUP5 ADD PUSH2 0x778 JUMP JUMPDEST SWAP1 POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x7F6 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH2 0x7FF DUP5 PUSH2 0x778 JUMP JUMPDEST SWAP3 POP PUSH2 0x80D PUSH1 0x20 DUP6 ADD PUSH2 0x778 JUMP JUMPDEST SWAP2 POP PUSH1 0x40 DUP5 ADD CALLDATALOAD SWAP1 POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x82F JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH2 0x838 DUP4 PUSH2 0x778 JUMP JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x85B JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH2 0x864 DUP6 PUSH2 0x778 JUMP JUMPDEST SWAP4 POP PUSH1 0x20 DUP6 ADD CALLDATALOAD SWAP3 POP PUSH1 0x40 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x887 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 DUP8 ADD SWAP2 POP DUP8 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x89A JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x8A8 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP9 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x8B9 JUMPI DUP4 DUP5 REVERT JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP POP PUSH1 0x20 ADD SWAP5 POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 SWAP1 MSTORE PUSH1 0x60 PUSH1 0x40 DUP3 ADD DUP2 SWAP1 MSTORE DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x0 DUP3 DUP5 PUSH1 0x80 DUP5 ADD CALLDATACOPY DUP2 DUP4 ADD PUSH1 0x80 SWAP1 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x1F SWAP1 SWAP3 ADD PUSH1 0x1F NOT AND ADD ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 MSTORE DUP4 MLOAD DUP1 DUP3 DUP6 ADD MSTORE DUP3 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x93C JUMPI DUP6 DUP2 ADD DUP4 ADD MLOAD DUP6 DUP3 ADD PUSH1 0x40 ADD MSTORE DUP3 ADD PUSH2 0x920 JUMP JUMPDEST DUP2 DUP2 GT ISZERO PUSH2 0x94D JUMPI DUP4 PUSH1 0x40 DUP4 DUP8 ADD ADD MSTORE JUMPDEST POP PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x40 ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 NOT DUP3 GT ISZERO PUSH2 0x982 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 DUP2 REVERT JUMPDEST POP ADD SWAP1 JUMP JUMPDEST PUSH1 0x2 DUP2 DIV PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x99B JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x9BC JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD1 PUSH7 0xEC7D126516A8A2 COINBASE 0xB1 0xED STATICCALL NUMBER CODECOPY 0xB2 0x4A 0xB6 CODECOPY 0x27 STOP 0x4B OR SDIV SSTORE 0x2E 0xA6 0xE7 0xAF PUSH32 0x370E64736F6C6343000802003300000000000000000000000000000000000000 ",
  "pcMap": {
    "0": {
      "offset": [
        249,
        1118
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x80"
    },
    "2": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x40"
    },
    "4": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "MSTORE",
      "path": "70"
    },
    "5": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "CALLVALUE",
      "path": "70"
    },
    "6": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "7": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "ISZERO",
      "path": "70"
    },
    "8": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x10"
    },
    "11": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "12": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x0"
    },
    "14": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "15": {
      "dev": "Cannot send ether to nonpayable function",
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "REVERT",
      "path": "70"
    },
    "16": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPDEST",
      "path": "70"
    },
    "17": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "POP",
      "path": "70"
    },
    "18": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x4"
    },
    "20": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "CALLDATASIZE",
      "path": "70"
    },
    "21": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "LT",
      "path": "70"
    },
    "22": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0xB4"
    },
    "25": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "26": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x0"
    },
    "28": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "CALLDATALOAD",
      "path": "70"
    },
    "29": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0xE0"
    },
    "31": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "SHR",
      "path": "70"
    },
    "32": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "33": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0x4000AEA0"
    },
    "38": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "GT",
      "path": "70"
    },
    "39": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x71"
    },
    "42": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "43": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "44": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0x4000AEA0"
    },
    "49": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "EQ",
      "path": "70"
    },
    "50": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x141"
    },
    "53": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "54": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "55": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0x70A08231"
    },
    "60": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "EQ",
      "path": "70"
    },
    "61": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x154"
    },
    "64": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "65": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "66": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0x95D89B41"
    },
    "71": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "EQ",
      "path": "70"
    },
    "72": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x167"
    },
    "75": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "76": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "77": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0xA457C2D7"
    },
    "82": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "EQ",
      "path": "70"
    },
    "83": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x16F"
    },
    "86": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "87": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "88": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0xA9059CBB"
    },
    "93": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "EQ",
      "path": "70"
    },
    "94": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x182"
    },
    "97": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "98": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "99": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0xDD62ED3E"
    },
    "104": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "EQ",
      "path": "70"
    },
    "105": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x195"
    },
    "108": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "109": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0xB4"
    },
    "112": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMP",
      "path": "70"
    },
    "113": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPDEST",
      "path": "70"
    },
    "114": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "115": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0x6FDDE03"
    },
    "120": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "EQ",
      "path": "70"
    },
    "121": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0xB9"
    },
    "124": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "125": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "126": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0x95EA7B3"
    },
    "131": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "EQ",
      "path": "70"
    },
    "132": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0xD7"
    },
    "135": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "136": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "137": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0x18160DDD"
    },
    "142": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "EQ",
      "path": "70"
    },
    "143": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0xFA"
    },
    "146": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "147": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "148": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0x23B872DD"
    },
    "153": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "EQ",
      "path": "70"
    },
    "154": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x10C"
    },
    "157": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "158": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "159": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0x313CE567"
    },
    "164": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "EQ",
      "path": "70"
    },
    "165": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x11F"
    },
    "168": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "169": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "170": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0x39509351"
    },
    "175": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "EQ",
      "path": "70"
    },
    "176": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x12E"
    },
    "179": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "180": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "JUMPDEST",
      "path": "70"
    },
    "181": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x0"
    },
    "183": {
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "DUP1",
      "path": "70"
    },
    "184": {
      "first_revert": true,
      "fn": null,
      "offset": [
        249,
        1118
      ],
      "op": "REVERT",
      "path": "70"
    },
    "185": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "186": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xC1"
    },
    "189": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x1A8"
    },
    "192": {
      "fn": "ERC20.name",
      "jump": "i",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMP",
      "path": "12"
    },
    "193": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "194": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "196": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "197": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xCE"
    },
    "200": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "201": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "202": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x910"
    },
    "205": {
      "fn": "ERC20.name",
      "jump": "i",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMP",
      "path": "12"
    },
    "206": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "207": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "209": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "210": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "DUP1",
      "path": "12"
    },
    "211": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "212": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "SUB",
      "path": "12"
    },
    "213": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "214": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "RETURN",
      "path": "12"
    },
    "215": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "216": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xEA"
    },
    "219": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xE5"
    },
    "222": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "CALLDATASIZE",
      "path": "12"
    },
    "223": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "225": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x81D"
    },
    "228": {
      "fn": "ERC20.approve",
      "jump": "i",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMP",
      "path": "12"
    },
    "229": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "230": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x23A"
    },
    "233": {
      "fn": "ERC20.approve",
      "jump": "i",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMP",
      "path": "12"
    },
    "234": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "235": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "237": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "238": {
      "op": "SWAP1"
    },
    "239": {
      "op": "ISZERO"
    },
    "240": {
      "op": "ISZERO"
    },
    "241": {
      "op": "DUP2"
    },
    "242": {
      "op": "MSTORE"
    },
    "243": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "245": {
      "op": "ADD"
    },
    "246": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xCE"
    },
    "249": {
      "op": "JUMP"
    },
    "250": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3244,
        3350
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "251": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3331,
        3343
      ],
      "op": "PUSH1",
      "path": "12",
      "statement": 0,
      "value": "0x2"
    },
    "253": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3331,
        3343
      ],
      "op": "SLOAD",
      "path": "12"
    },
    "254": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3244,
        3350
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "255": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3244,
        3350
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "257": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3244,
        3350
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "258": {
      "op": "SWAP1"
    },
    "259": {
      "op": "DUP2"
    },
    "260": {
      "op": "MSTORE"
    },
    "261": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "263": {
      "op": "ADD"
    },
    "264": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3244,
        3350
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xCE"
    },
    "267": {
      "op": "JUMP"
    },
    "268": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "269": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xEA"
    },
    "272": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x11A"
    },
    "275": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "CALLDATASIZE",
      "path": "12"
    },
    "276": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "278": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x7E2"
    },
    "281": {
      "fn": "ERC20.transferFrom",
      "jump": "i",
      "offset": [
        5192,
        5478
      ],
      "op": "JUMP",
      "path": "12"
    },
    "282": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "283": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x252"
    },
    "286": {
      "fn": "ERC20.transferFrom",
      "jump": "i",
      "offset": [
        5192,
        5478
      ],
      "op": "JUMP",
      "path": "12"
    },
    "287": {
      "fn": "ERC20.decimals",
      "offset": [
        3093,
        3184
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "288": {
      "fn": "ERC20.decimals",
      "offset": [
        3093,
        3184
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "290": {
      "fn": "ERC20.decimals",
      "offset": [
        3093,
        3184
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "291": {
      "fn": "ERC20.decimals",
      "offset": [
        3175,
        3177
      ],
      "op": "PUSH1",
      "path": "12",
      "statement": 1,
      "value": "0x12"
    },
    "293": {
      "op": "DUP2"
    },
    "294": {
      "op": "MSTORE"
    },
    "295": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "297": {
      "op": "ADD"
    },
    "298": {
      "fn": "ERC20.decimals",
      "offset": [
        3093,
        3184
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xCE"
    },
    "301": {
      "op": "JUMP"
    },
    "302": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6107
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "303": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6107
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xEA"
    },
    "306": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6107
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x13C"
    },
    "309": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6107
      ],
      "op": "CALLDATASIZE",
      "path": "12"
    },
    "310": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6107
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "312": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6107
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x81D"
    },
    "315": {
      "fn": "ERC20.increaseAllowance",
      "jump": "i",
      "offset": [
        5873,
        6107
      ],
      "op": "JUMP",
      "path": "12"
    },
    "316": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6107
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "317": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6107
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x276"
    },
    "320": {
      "fn": "ERC20.increaseAllowance",
      "jump": "i",
      "offset": [
        5873,
        6107
      ],
      "op": "JUMP",
      "path": "12"
    },
    "321": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        411,
        723
      ],
      "op": "JUMPDEST",
      "path": "70"
    },
    "322": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        411,
        723
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0xEA"
    },
    "325": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        411,
        723
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x14F"
    },
    "328": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        411,
        723
      ],
      "op": "CALLDATASIZE",
      "path": "70"
    },
    "329": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        411,
        723
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x4"
    },
    "331": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        411,
        723
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x846"
    },
    "334": {
      "fn": "ChainlinkToken.transferAndCall",
      "jump": "i",
      "offset": [
        411,
        723
      ],
      "op": "JUMP",
      "path": "70"
    },
    "335": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        411,
        723
      ],
      "op": "JUMPDEST",
      "path": "70"
    },
    "336": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        411,
        723
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x298"
    },
    "339": {
      "fn": "ChainlinkToken.transferAndCall",
      "jump": "i",
      "offset": [
        411,
        723
      ],
      "op": "JUMP",
      "path": "70"
    },
    "340": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "341": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xFE"
    },
    "344": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x162"
    },
    "347": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "CALLDATASIZE",
      "path": "12"
    },
    "348": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "350": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x78F"
    },
    "353": {
      "fn": "ERC20.balanceOf",
      "jump": "i",
      "offset": [
        3408,
        3533
      ],
      "op": "JUMP",
      "path": "12"
    },
    "354": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "355": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x2B8"
    },
    "358": {
      "fn": "ERC20.balanceOf",
      "jump": "i",
      "offset": [
        3408,
        3533
      ],
      "op": "JUMP",
      "path": "12"
    },
    "359": {
      "fn": "ERC20.symbol",
      "offset": [
        2367,
        2469
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "360": {
      "fn": "ERC20.symbol",
      "offset": [
        2367,
        2469
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xC1"
    },
    "363": {
      "fn": "ERC20.symbol",
      "offset": [
        2367,
        2469
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x2D7"
    },
    "366": {
      "fn": "ERC20.symbol",
      "jump": "i",
      "offset": [
        2367,
        2469
      ],
      "op": "JUMP",
      "path": "12"
    },
    "367": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6594,
        7021
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "368": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6594,
        7021
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xEA"
    },
    "371": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6594,
        7021
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x17D"
    },
    "374": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6594,
        7021
      ],
      "op": "CALLDATASIZE",
      "path": "12"
    },
    "375": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6594,
        7021
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "377": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6594,
        7021
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x81D"
    },
    "380": {
      "fn": "ERC20.decreaseAllowance",
      "jump": "i",
      "offset": [
        6594,
        7021
      ],
      "op": "JUMP",
      "path": "12"
    },
    "381": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6594,
        7021
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "382": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6594,
        7021
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x2E6"
    },
    "385": {
      "fn": "ERC20.decreaseAllowance",
      "jump": "i",
      "offset": [
        6594,
        7021
      ],
      "op": "JUMP",
      "path": "12"
    },
    "386": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "387": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xEA"
    },
    "390": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x190"
    },
    "393": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "CALLDATASIZE",
      "path": "12"
    },
    "394": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "396": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x81D"
    },
    "399": {
      "fn": "ERC20.transfer",
      "jump": "i",
      "offset": [
        3729,
        3918
      ],
      "op": "JUMP",
      "path": "12"
    },
    "400": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "401": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x366"
    },
    "404": {
      "fn": "ERC20.transfer",
      "jump": "i",
      "offset": [
        3729,
        3918
      ],
      "op": "JUMP",
      "path": "12"
    },
    "405": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "406": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0xFE"
    },
    "409": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x1A3"
    },
    "412": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "CALLDATASIZE",
      "path": "12"
    },
    "413": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "415": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x7B0"
    },
    "418": {
      "fn": "ERC20.allowance",
      "jump": "i",
      "offset": [
        3976,
        4125
      ],
      "op": "JUMP",
      "path": "12"
    },
    "419": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "420": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x374"
    },
    "423": {
      "fn": "ERC20.allowance",
      "jump": "i",
      "offset": [
        3976,
        4125
      ],
      "op": "JUMP",
      "path": "12"
    },
    "424": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "425": {
      "fn": "ERC20.name",
      "offset": [
        2210,
        2223
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x60"
    },
    "427": {
      "fn": "ERC20.name",
      "offset": [
        2242,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "statement": 2,
      "value": "0x3"
    },
    "429": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "12"
    },
    "430": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SLOAD",
      "path": "12"
    },
    "431": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x1B7"
    },
    "434": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "435": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x987"
    },
    "438": {
      "fn": "ERC20.name",
      "jump": "i",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMP",
      "path": "12"
    },
    "439": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "440": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "12"
    },
    "441": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x1F"
    },
    "443": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "12"
    },
    "444": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x20"
    },
    "446": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "12"
    },
    "447": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "448": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DIV",
      "path": "12"
    },
    "449": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MUL",
      "path": "12"
    },
    "450": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x20"
    },
    "452": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "12"
    },
    "453": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "455": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "456": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "457": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP2",
      "path": "12"
    },
    "458": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "12"
    },
    "459": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "461": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "462": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "12"
    },
    "463": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP3",
      "path": "12"
    },
    "464": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "465": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "466": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP2",
      "path": "12"
    },
    "467": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP2",
      "path": "12"
    },
    "468": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "469": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x20"
    },
    "471": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "12"
    },
    "472": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP3",
      "path": "12"
    },
    "473": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "12"
    },
    "474": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SLOAD",
      "path": "12"
    },
    "475": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x1E3"
    },
    "478": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "479": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x987"
    },
    "482": {
      "fn": "ERC20.name",
      "jump": "i",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMP",
      "path": "12"
    },
    "483": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "484": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "12"
    },
    "485": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ISZERO",
      "path": "12"
    },
    "486": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x230"
    },
    "489": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPI",
      "path": "12"
    },
    "490": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "12"
    },
    "491": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x1F"
    },
    "493": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "LT",
      "path": "12"
    },
    "494": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x205"
    },
    "497": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPI",
      "path": "12"
    },
    "498": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x100"
    },
    "501": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "12"
    },
    "502": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP4",
      "path": "12"
    },
    "503": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SLOAD",
      "path": "12"
    },
    "504": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DIV",
      "path": "12"
    },
    "505": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MUL",
      "path": "12"
    },
    "506": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP4",
      "path": "12"
    },
    "507": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "508": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "509": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x20"
    },
    "511": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "12"
    },
    "512": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "513": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x230"
    },
    "516": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMP",
      "path": "12"
    },
    "517": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "518": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP3",
      "path": "12"
    },
    "519": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "12"
    },
    "520": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "521": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "522": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "524": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "525": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x20"
    },
    "527": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "529": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "KECCAK256",
      "path": "12"
    },
    "530": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "531": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "532": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP2",
      "path": "12"
    },
    "533": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SLOAD",
      "path": "12"
    },
    "534": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP2",
      "path": "12"
    },
    "535": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "536": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "537": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x1"
    },
    "539": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "12"
    },
    "540": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "541": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x20"
    },
    "543": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "12"
    },
    "544": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "12"
    },
    "545": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP4",
      "path": "12"
    },
    "546": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "GT",
      "path": "12"
    },
    "547": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x213"
    },
    "550": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPI",
      "path": "12"
    },
    "551": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP3",
      "path": "12"
    },
    "552": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "553": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SUB",
      "path": "12"
    },
    "554": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x1F"
    },
    "556": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "AND",
      "path": "12"
    },
    "557": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP3",
      "path": "12"
    },
    "558": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "12"
    },
    "559": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "560": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "561": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "POP",
      "path": "12"
    },
    "562": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "POP",
      "path": "12"
    },
    "563": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "POP",
      "path": "12"
    },
    "564": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "POP",
      "path": "12"
    },
    "565": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "POP",
      "path": "12"
    },
    "566": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "567": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "POP",
      "path": "12"
    },
    "568": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "569": {
      "fn": "ERC20.name",
      "jump": "o",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMP",
      "path": "12"
    },
    "570": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "571": {
      "fn": "ERC20.approve",
      "offset": [
        4516,
        4520
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "573": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "CALLER",
      "path": "22",
      "statement": 3
    },
    "574": {
      "fn": "ERC20.approve",
      "offset": [
        4570,
        4602
      ],
      "op": "PUSH2",
      "path": "12",
      "statement": 4,
      "value": "0x248"
    },
    "577": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "DUP2",
      "path": "22"
    },
    "578": {
      "fn": "ERC20.approve",
      "offset": [
        4586,
        4593
      ],
      "op": "DUP6",
      "path": "12"
    },
    "579": {
      "fn": "ERC20.approve",
      "offset": [
        4595,
        4601
      ],
      "op": "DUP6",
      "path": "12"
    },
    "580": {
      "fn": "ERC20.approve",
      "offset": [
        4570,
        4578
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x39F"
    },
    "583": {
      "fn": "ERC20.approve",
      "jump": "i",
      "offset": [
        4570,
        4602
      ],
      "op": "JUMP",
      "path": "12"
    },
    "584": {
      "fn": "ERC20.approve",
      "offset": [
        4570,
        4602
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "585": {
      "op": "POP"
    },
    "586": {
      "fn": "ERC20.approve",
      "offset": [
        4619,
        4623
      ],
      "op": "PUSH1",
      "path": "12",
      "statement": 5,
      "value": "0x1"
    },
    "588": {
      "fn": "ERC20.approve",
      "offset": [
        4619,
        4623
      ],
      "op": "SWAP4",
      "path": "12"
    },
    "589": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "SWAP3",
      "path": "12"
    },
    "590": {
      "op": "POP"
    },
    "591": {
      "op": "POP"
    },
    "592": {
      "op": "POP"
    },
    "593": {
      "fn": "ERC20.approve",
      "jump": "o",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMP",
      "path": "12"
    },
    "594": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "595": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5319,
        5323
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "597": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "CALLER",
      "path": "22"
    },
    "598": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5375,
        5413
      ],
      "op": "PUSH2",
      "path": "12",
      "statement": 6,
      "value": "0x260"
    },
    "601": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5391,
        5395
      ],
      "op": "DUP6",
      "path": "12"
    },
    "602": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "DUP3",
      "path": "22"
    },
    "603": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5406,
        5412
      ],
      "op": "DUP6",
      "path": "12"
    },
    "604": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5375,
        5390
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x4C3"
    },
    "607": {
      "fn": "ERC20.transferFrom",
      "jump": "i",
      "offset": [
        5375,
        5413
      ],
      "op": "JUMP",
      "path": "12"
    },
    "608": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5375,
        5413
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "609": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5423,
        5450
      ],
      "op": "PUSH2",
      "path": "12",
      "statement": 7,
      "value": "0x26B"
    },
    "612": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5433,
        5437
      ],
      "op": "DUP6",
      "path": "12"
    },
    "613": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5439,
        5441
      ],
      "op": "DUP6",
      "path": "12"
    },
    "614": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5443,
        5449
      ],
      "op": "DUP6",
      "path": "12"
    },
    "615": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5423,
        5432
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x53D"
    },
    "618": {
      "fn": "ERC20.transferFrom",
      "jump": "i",
      "offset": [
        5423,
        5450
      ],
      "op": "JUMP",
      "path": "12"
    },
    "619": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5423,
        5450
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "620": {
      "op": "POP"
    },
    "621": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5467,
        5471
      ],
      "op": "PUSH1",
      "path": "12",
      "statement": 8,
      "value": "0x1"
    },
    "623": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5467,
        5471
      ],
      "op": "SWAP5",
      "path": "12"
    },
    "624": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "SWAP4",
      "path": "12"
    },
    "625": {
      "op": "POP"
    },
    "626": {
      "op": "POP"
    },
    "627": {
      "op": "POP"
    },
    "628": {
      "op": "POP"
    },
    "629": {
      "fn": "ERC20.transferFrom",
      "jump": "o",
      "offset": [
        5192,
        5478
      ],
      "op": "JUMP",
      "path": "12"
    },
    "630": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6107
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "631": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5961,
        5965
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "633": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "CALLER",
      "path": "22"
    },
    "634": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6015,
        6079
      ],
      "op": "PUSH2",
      "path": "12",
      "statement": 9,
      "value": "0x248"
    },
    "637": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "DUP2",
      "path": "22"
    },
    "638": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6031,
        6038
      ],
      "op": "DUP6",
      "path": "12"
    },
    "639": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6068,
        6078
      ],
      "op": "DUP6",
      "path": "12"
    },
    "640": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6065
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x289"
    },
    "643": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "DUP4",
      "path": "22"
    },
    "644": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6031,
        6038
      ],
      "op": "DUP4",
      "path": "12"
    },
    "645": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6049
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x374"
    },
    "648": {
      "fn": "ERC20.increaseAllowance",
      "jump": "i",
      "offset": [
        6040,
        6065
      ],
      "op": "JUMP",
      "path": "12"
    },
    "649": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6065
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "650": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6078
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x293"
    },
    "653": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6078
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "654": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6078
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "655": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6078
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x963"
    },
    "658": {
      "fn": "ERC20.increaseAllowance",
      "jump": "i",
      "offset": [
        6040,
        6078
      ],
      "op": "JUMP",
      "path": "12"
    },
    "659": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6078
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "660": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6015,
        6023
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x39F"
    },
    "663": {
      "fn": "ERC20.increaseAllowance",
      "jump": "i",
      "offset": [
        6015,
        6079
      ],
      "op": "JUMP",
      "path": "12"
    },
    "664": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        411,
        723
      ],
      "op": "JUMPDEST",
      "path": "70"
    },
    "665": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        500,
        512
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x0"
    },
    "667": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        523,
        550
      ],
      "op": "PUSH2",
      "path": "70",
      "statement": 10,
      "value": "0x2A4"
    },
    "670": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        538,
        541
      ],
      "op": "DUP6",
      "path": "70"
    },
    "671": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        543,
        549
      ],
      "op": "DUP6",
      "path": "70"
    },
    "672": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        523,
        537
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x366"
    },
    "675": {
      "fn": "ChainlinkToken.transferAndCall",
      "jump": "i",
      "offset": [
        523,
        550
      ],
      "op": "JUMP",
      "path": "70"
    },
    "676": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        523,
        550
      ],
      "op": "JUMPDEST",
      "path": "70"
    },
    "677": {
      "op": "POP"
    },
    "678": {
      "fn": "ChainlinkToken.isContract",
      "offset": [
        1063,
        1081
      ],
      "op": "DUP5",
      "path": "70"
    },
    "679": {
      "fn": "ChainlinkToken.isContract",
      "offset": [
        1063,
        1081
      ],
      "op": "EXTCODESIZE",
      "path": "70"
    },
    "680": {
      "fn": "ChainlinkToken.isContract",
      "offset": [
        1099,
        1109
      ],
      "op": "ISZERO",
      "path": "70",
      "statement": 11
    },
    "681": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        614,
        696
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x26B"
    },
    "684": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        614,
        696
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "685": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        649,
        685
      ],
      "op": "PUSH2",
      "path": "70",
      "statement": 12,
      "value": "0x26B"
    },
    "688": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        666,
        669
      ],
      "op": "DUP6",
      "path": "70"
    },
    "689": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        671,
        677
      ],
      "op": "DUP6",
      "path": "70"
    },
    "690": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        679,
        684
      ],
      "op": "DUP6",
      "path": "70"
    },
    "691": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        679,
        684
      ],
      "op": "DUP6",
      "path": "70"
    },
    "692": {
      "fn": "ChainlinkToken.transferAndCall",
      "offset": [
        649,
        665
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x70B"
    },
    "695": {
      "fn": "ChainlinkToken.transferAndCall",
      "jump": "i",
      "offset": [
        649,
        685
      ],
      "op": "JUMP",
      "path": "70"
    },
    "696": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "697": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "699": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "701": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "703": {
      "op": "SHL"
    },
    "704": {
      "op": "SUB"
    },
    "705": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "DUP2",
      "path": "12",
      "statement": 13
    },
    "706": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "AND",
      "path": "12"
    },
    "707": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3482,
        3489
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "709": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "710": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "DUP2",
      "path": "12"
    },
    "711": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "712": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x20"
    },
    "714": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "DUP2",
      "path": "12"
    },
    "715": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "716": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "717": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "719": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "720": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "KECCAK256",
      "path": "12"
    },
    "721": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "SLOAD",
      "path": "12"
    },
    "722": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "723": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "724": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "725": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "POP",
      "path": "12"
    },
    "726": {
      "fn": "ERC20.balanceOf",
      "jump": "o",
      "offset": [
        3408,
        3533
      ],
      "op": "JUMP",
      "path": "12"
    },
    "727": {
      "fn": "ERC20.symbol",
      "offset": [
        2367,
        2469
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "728": {
      "fn": "ERC20.symbol",
      "offset": [
        2423,
        2436
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x60"
    },
    "730": {
      "fn": "ERC20.symbol",
      "offset": [
        2455,
        2462
      ],
      "op": "PUSH1",
      "path": "12",
      "statement": 14,
      "value": "0x4"
    },
    "732": {
      "fn": "ERC20.symbol",
      "offset": [
        2448,
        2462
      ],
      "op": "DUP1",
      "path": "12"
    },
    "733": {
      "fn": "ERC20.symbol",
      "offset": [
        2448,
        2462
      ],
      "op": "SLOAD",
      "path": "12"
    },
    "734": {
      "fn": "ERC20.symbol",
      "offset": [
        2448,
        2462
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x1B7"
    },
    "737": {
      "fn": "ERC20.symbol",
      "offset": [
        2448,
        2462
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "738": {
      "fn": "ERC20.symbol",
      "offset": [
        2448,
        2462
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x987"
    },
    "741": {
      "fn": "ERC20.symbol",
      "jump": "i",
      "offset": [
        2448,
        2462
      ],
      "op": "JUMP",
      "path": "12"
    },
    "742": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6594,
        7021
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "743": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6687,
        6691
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "745": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "CALLER",
      "path": "22"
    },
    "746": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6687,
        6691
      ],
      "op": "DUP2",
      "path": "12"
    },
    "747": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6768,
        6793
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x2F4"
    },
    "750": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "DUP3",
      "path": "22"
    },
    "751": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6785,
        6792
      ],
      "op": "DUP7",
      "path": "12"
    },
    "752": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6768,
        6777
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x374"
    },
    "755": {
      "fn": "ERC20.decreaseAllowance",
      "jump": "i",
      "offset": [
        6768,
        6793
      ],
      "op": "JUMP",
      "path": "12"
    },
    "756": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6768,
        6793
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "757": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6741,
        6793
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "758": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6741,
        6793
      ],
      "op": "POP",
      "path": "12"
    },
    "759": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6831,
        6846
      ],
      "op": "DUP4",
      "path": "12",
      "statement": 15
    },
    "760": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6811,
        6827
      ],
      "op": "DUP2",
      "path": "12"
    },
    "761": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6811,
        6846
      ],
      "op": "LT",
      "path": "12"
    },
    "762": {
      "branch": 33,
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6811,
        6846
      ],
      "op": "ISZERO",
      "path": "12"
    },
    "763": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x359"
    },
    "766": {
      "branch": 33,
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "JUMPI",
      "path": "12"
    },
    "767": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "769": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "770": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "774": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "776": {
      "op": "SHL"
    },
    "777": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "DUP2",
      "path": "12"
    },
    "778": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "779": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "781": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "783": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "DUP3",
      "path": "12"
    },
    "784": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "ADD",
      "path": "12"
    },
    "785": {
      "op": "MSTORE"
    },
    "786": {
      "op": "PUSH1",
      "value": "0x25"
    },
    "788": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "790": {
      "op": "DUP3"
    },
    "791": {
      "op": "ADD"
    },
    "792": {
      "op": "MSTORE"
    },
    "793": {
      "op": "PUSH32",
      "value": "0x45524332303A2064656372656173656420616C6C6F77616E63652062656C6F77"
    },
    "826": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "828": {
      "op": "DUP3"
    },
    "829": {
      "op": "ADD"
    },
    "830": {
      "op": "MSTORE"
    },
    "831": {
      "op": "PUSH5",
      "value": "0x207A65726F"
    },
    "837": {
      "op": "PUSH1",
      "value": "0xD8"
    },
    "839": {
      "op": "SHL"
    },
    "840": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "842": {
      "op": "DUP3"
    },
    "843": {
      "op": "ADD"
    },
    "844": {
      "op": "MSTORE"
    },
    "845": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "847": {
      "op": "ADD"
    },
    "848": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "849": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "851": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "852": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "DUP1",
      "path": "12"
    },
    "853": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "854": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "SUB",
      "path": "12"
    },
    "855": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "856": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "REVERT",
      "optimizer_revert": true,
      "path": "12"
    },
    "857": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6803,
        6888
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "858": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6922,
        6982
      ],
      "op": "PUSH2",
      "path": "12",
      "statement": 16,
      "value": "0x26B"
    },
    "861": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6931,
        6936
      ],
      "op": "DUP3",
      "path": "12"
    },
    "862": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6938,
        6945
      ],
      "op": "DUP7",
      "path": "12"
    },
    "863": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6966,
        6981
      ],
      "op": "DUP7",
      "path": "12"
    },
    "864": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6947,
        6963
      ],
      "op": "DUP5",
      "path": "12"
    },
    "865": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6947,
        6981
      ],
      "op": "SUB",
      "path": "12"
    },
    "866": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6922,
        6930
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x39F"
    },
    "869": {
      "fn": "ERC20.decreaseAllowance",
      "jump": "i",
      "offset": [
        6922,
        6982
      ],
      "op": "JUMP",
      "path": "12"
    },
    "870": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "871": {
      "fn": "ERC20.transfer",
      "offset": [
        3808,
        3812
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "873": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "CALLER",
      "path": "22"
    },
    "874": {
      "fn": "ERC20.transfer",
      "offset": [
        3862,
        3890
      ],
      "op": "PUSH2",
      "path": "12",
      "statement": 17,
      "value": "0x248"
    },
    "877": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "DUP2",
      "path": "22"
    },
    "878": {
      "fn": "ERC20.transfer",
      "offset": [
        3879,
        3881
      ],
      "op": "DUP6",
      "path": "12"
    },
    "879": {
      "fn": "ERC20.transfer",
      "offset": [
        3883,
        3889
      ],
      "op": "DUP6",
      "path": "12"
    },
    "880": {
      "fn": "ERC20.transfer",
      "offset": [
        3862,
        3871
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x53D"
    },
    "883": {
      "fn": "ERC20.transfer",
      "jump": "i",
      "offset": [
        3862,
        3890
      ],
      "op": "JUMP",
      "path": "12"
    },
    "884": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "885": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "887": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "889": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "891": {
      "op": "SHL"
    },
    "892": {
      "op": "SUB"
    },
    "893": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "SWAP2",
      "path": "12",
      "statement": 18
    },
    "894": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP3",
      "path": "12"
    },
    "895": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "AND",
      "path": "12"
    },
    "896": {
      "fn": "ERC20.allowance",
      "offset": [
        4065,
        4072
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "898": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "899": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP2",
      "path": "12"
    },
    "900": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "901": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4102
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x1"
    },
    "903": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x20"
    },
    "905": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "906": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP2",
      "path": "12"
    },
    "907": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "908": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "910": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP1",
      "path": "12"
    },
    "911": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP4",
      "path": "12"
    },
    "912": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "KECCAK256",
      "path": "12"
    },
    "913": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP4",
      "path": "12"
    },
    "914": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "915": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP5",
      "path": "12"
    },
    "916": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "AND",
      "path": "12"
    },
    "917": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "DUP3",
      "path": "12"
    },
    "918": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "919": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "920": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "921": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "922": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "923": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "KECCAK256",
      "path": "12"
    },
    "924": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SLOAD",
      "path": "12"
    },
    "925": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "926": {
      "fn": "ERC20.allowance",
      "jump": "o",
      "offset": [
        3976,
        4125
      ],
      "op": "JUMP",
      "path": "12"
    },
    "927": {
      "fn": "ERC20._approve",
      "offset": [
        10110,
        10480
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "928": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "930": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "932": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "934": {
      "op": "SHL"
    },
    "935": {
      "op": "SUB"
    },
    "936": {
      "fn": "ERC20._approve",
      "offset": [
        10241,
        10260
      ],
      "op": "DUP4",
      "path": "12",
      "statement": 19
    },
    "937": {
      "branch": 34,
      "fn": "ERC20._approve",
      "offset": [
        10241,
        10260
      ],
      "op": "AND",
      "path": "12"
    },
    "938": {
      "fn": "ERC20._approve",
      "offset": [
        10233,
        10301
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x401"
    },
    "941": {
      "branch": 34,
      "fn": "ERC20._approve",
      "offset": [
        10233,
        10301
      ],
      "op": "JUMPI",
      "path": "12"
    },
    "942": {
      "fn": "ERC20._approve",
      "offset": [
        10233,
        10301
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "944": {
      "fn": "ERC20._approve",
      "offset": [
        10233,
        10301
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "945": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "949": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "951": {
      "op": "SHL"
    },
    "952": {
      "fn": "ERC20._approve",
      "offset": [
        10233,
        10301
      ],
      "op": "DUP2",
      "path": "12"
    },
    "953": {
      "fn": "ERC20._approve",
      "offset": [
        10233,
        10301
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "954": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "956": {
      "fn": "ERC20._approve",
      "offset": [
        10233,
        10301
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "958": {
      "fn": "ERC20._approve",
      "offset": [
        10233,
        10301
      ],
      "op": "DUP3",
      "path": "12"
    },
    "959": {
      "fn": "ERC20._approve",
      "offset": [
        10233,
        10301
      ],
      "op": "ADD",
      "path": "12"
    },
    "960": {
      "op": "MSTORE"
    },
    "961": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "963": {
      "op": "DUP1"
    },
    "964": {
      "op": "DUP3"
    },
    "965": {
      "op": "ADD"
    },
    "966": {
      "op": "MSTORE"
    },
    "967": {
      "op": "PUSH32",
      "value": "0x45524332303A20617070726F76652066726F6D20746865207A65726F20616464"
    },
    "1000": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1002": {
      "op": "DUP3"
    },
    "1003": {
      "op": "ADD"
    },
    "1004": {
      "op": "MSTORE"
    },
    "1005": {
      "op": "PUSH4",
      "value": "0x72657373"
    },
    "1010": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "1012": {
      "op": "SHL"
    },
    "1013": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1015": {
      "op": "DUP3"
    },
    "1016": {
      "op": "ADD"
    },
    "1017": {
      "op": "MSTORE"
    },
    "1018": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1020": {
      "op": "ADD"
    },
    "1021": {
      "fn": "ERC20._approve",
      "offset": [
        10233,
        10301
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x350"
    },
    "1024": {
      "op": "JUMP"
    },
    "1025": {
      "fn": "ERC20._approve",
      "offset": [
        10233,
        10301
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "1026": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1028": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1030": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1032": {
      "op": "SHL"
    },
    "1033": {
      "op": "SUB"
    },
    "1034": {
      "fn": "ERC20._approve",
      "offset": [
        10319,
        10340
      ],
      "op": "DUP3",
      "path": "12",
      "statement": 20
    },
    "1035": {
      "branch": 35,
      "fn": "ERC20._approve",
      "offset": [
        10319,
        10340
      ],
      "op": "AND",
      "path": "12"
    },
    "1036": {
      "fn": "ERC20._approve",
      "offset": [
        10311,
        10379
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x462"
    },
    "1039": {
      "branch": 35,
      "fn": "ERC20._approve",
      "offset": [
        10311,
        10379
      ],
      "op": "JUMPI",
      "path": "12"
    },
    "1040": {
      "fn": "ERC20._approve",
      "offset": [
        10311,
        10379
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "1042": {
      "fn": "ERC20._approve",
      "offset": [
        10311,
        10379
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "1043": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1047": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1049": {
      "op": "SHL"
    },
    "1050": {
      "fn": "ERC20._approve",
      "offset": [
        10311,
        10379
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1051": {
      "fn": "ERC20._approve",
      "offset": [
        10311,
        10379
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1052": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1054": {
      "fn": "ERC20._approve",
      "offset": [
        10311,
        10379
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "1056": {
      "fn": "ERC20._approve",
      "offset": [
        10311,
        10379
      ],
      "op": "DUP3",
      "path": "12"
    },
    "1057": {
      "fn": "ERC20._approve",
      "offset": [
        10311,
        10379
      ],
      "op": "ADD",
      "path": "12"
    },
    "1058": {
      "op": "MSTORE"
    },
    "1059": {
      "op": "PUSH1",
      "value": "0x22"
    },
    "1061": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1063": {
      "op": "DUP3"
    },
    "1064": {
      "op": "ADD"
    },
    "1065": {
      "op": "MSTORE"
    },
    "1066": {
      "op": "PUSH32",
      "value": "0x45524332303A20617070726F766520746F20746865207A65726F206164647265"
    },
    "1099": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1101": {
      "op": "DUP3"
    },
    "1102": {
      "op": "ADD"
    },
    "1103": {
      "op": "MSTORE"
    },
    "1104": {
      "op": "PUSH2",
      "value": "0x7373"
    },
    "1107": {
      "op": "PUSH1",
      "value": "0xF0"
    },
    "1109": {
      "op": "SHL"
    },
    "1110": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1112": {
      "op": "DUP3"
    },
    "1113": {
      "op": "ADD"
    },
    "1114": {
      "op": "MSTORE"
    },
    "1115": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1117": {
      "op": "ADD"
    },
    "1118": {
      "fn": "ERC20._approve",
      "offset": [
        10311,
        10379
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x350"
    },
    "1121": {
      "op": "JUMP"
    },
    "1122": {
      "fn": "ERC20._approve",
      "offset": [
        10311,
        10379
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "1123": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1125": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1127": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1129": {
      "op": "SHL"
    },
    "1130": {
      "op": "SUB"
    },
    "1131": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "DUP4",
      "path": "12",
      "statement": 21
    },
    "1132": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1133": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "AND",
      "path": "12"
    },
    "1134": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "1136": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1137": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1138": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1139": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10401
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x1"
    },
    "1141": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x20"
    },
    "1143": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1144": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1145": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1146": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "1148": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "DUP1",
      "path": "12"
    },
    "1149": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "DUP4",
      "path": "12"
    },
    "1150": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10408
      ],
      "op": "KECCAK256",
      "path": "12"
    },
    "1151": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "SWAP5",
      "path": "12"
    },
    "1152": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "DUP8",
      "path": "12"
    },
    "1153": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "AND",
      "path": "12"
    },
    "1154": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "DUP1",
      "path": "12"
    },
    "1155": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "DUP5",
      "path": "12"
    },
    "1156": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1157": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "SWAP5",
      "path": "12"
    },
    "1158": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "DUP3",
      "path": "12"
    },
    "1159": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1160": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "1161": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "DUP3",
      "path": "12"
    },
    "1162": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1163": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10417
      ],
      "op": "KECCAK256",
      "path": "12"
    },
    "1164": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10426
      ],
      "op": "DUP6",
      "path": "12"
    },
    "1165": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10426
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1166": {
      "fn": "ERC20._approve",
      "offset": [
        10390,
        10426
      ],
      "op": "SSTORE",
      "path": "12"
    },
    "1167": {
      "fn": "ERC20._approve",
      "offset": [
        10441,
        10473
      ],
      "op": "SWAP1",
      "path": "12",
      "statement": 22
    },
    "1168": {
      "fn": "ERC20._approve",
      "offset": [
        10441,
        10473
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "1169": {
      "op": "DUP5"
    },
    "1170": {
      "op": "DUP2"
    },
    "1171": {
      "op": "MSTORE"
    },
    "1172": {
      "fn": "ERC20._approve",
      "offset": [
        10441,
        10473
      ],
      "op": "PUSH32",
      "path": "12",
      "value": "0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925"
    },
    "1205": {
      "fn": "ERC20._approve",
      "offset": [
        10441,
        10473
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "1206": {
      "op": "ADD"
    },
    "1207": {
      "fn": "ERC20._approve",
      "offset": [
        10441,
        10473
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "1209": {
      "fn": "ERC20._approve",
      "offset": [
        10441,
        10473
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "1210": {
      "fn": "ERC20._approve",
      "offset": [
        10441,
        10473
      ],
      "op": "DUP1",
      "path": "12"
    },
    "1211": {
      "fn": "ERC20._approve",
      "offset": [
        10441,
        10473
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "1212": {
      "fn": "ERC20._approve",
      "offset": [
        10441,
        10473
      ],
      "op": "SUB",
      "path": "12"
    },
    "1213": {
      "fn": "ERC20._approve",
      "offset": [
        10441,
        10473
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1214": {
      "fn": "ERC20._approve",
      "offset": [
        10441,
        10473
      ],
      "op": "LOG3",
      "path": "12"
    },
    "1215": {
      "fn": "ERC20._approve",
      "offset": [
        10110,
        10480
      ],
      "op": "POP",
      "path": "12"
    },
    "1216": {
      "fn": "ERC20._approve",
      "offset": [
        10110,
        10480
      ],
      "op": "POP",
      "path": "12"
    },
    "1217": {
      "fn": "ERC20._approve",
      "offset": [
        10110,
        10480
      ],
      "op": "POP",
      "path": "12"
    },
    "1218": {
      "fn": "ERC20._approve",
      "jump": "o",
      "offset": [
        10110,
        10480
      ],
      "op": "JUMP",
      "path": "12"
    },
    "1219": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10761,
        11202
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "1220": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10891,
        10915
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "1222": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10918,
        10943
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x4CF"
    },
    "1225": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10928,
        10933
      ],
      "op": "DUP5",
      "path": "12"
    },
    "1226": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10935,
        10942
      ],
      "op": "DUP5",
      "path": "12"
    },
    "1227": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10918,
        10927
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x374"
    },
    "1230": {
      "fn": "ERC20._spendAllowance",
      "jump": "i",
      "offset": [
        10918,
        10943
      ],
      "op": "JUMP",
      "path": "12"
    },
    "1231": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10918,
        10943
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "1232": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10891,
        10943
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1233": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10891,
        10943
      ],
      "op": "POP",
      "path": "12"
    },
    "1234": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "1236": {
      "op": "NOT"
    },
    "1237": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10957,
        10973
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1238": {
      "branch": 36,
      "fn": "ERC20._spendAllowance",
      "offset": [
        10957,
        10994
      ],
      "op": "EQ",
      "path": "12"
    },
    "1239": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10953,
        11196
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x537"
    },
    "1242": {
      "branch": 36,
      "fn": "ERC20._spendAllowance",
      "offset": [
        10953,
        11196
      ],
      "op": "JUMPI",
      "path": "12"
    },
    "1243": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11038,
        11044
      ],
      "op": "DUP2",
      "path": "12",
      "statement": 23
    },
    "1244": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11018,
        11034
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1245": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11018,
        11044
      ],
      "op": "LT",
      "path": "12"
    },
    "1246": {
      "branch": 37,
      "fn": "ERC20._spendAllowance",
      "offset": [
        11018,
        11044
      ],
      "op": "ISZERO",
      "path": "12"
    },
    "1247": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11010,
        11078
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x52A"
    },
    "1250": {
      "branch": 37,
      "fn": "ERC20._spendAllowance",
      "offset": [
        11010,
        11078
      ],
      "op": "JUMPI",
      "path": "12"
    },
    "1251": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11010,
        11078
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "1253": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11010,
        11078
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "1254": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1258": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1260": {
      "op": "SHL"
    },
    "1261": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11010,
        11078
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1262": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11010,
        11078
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1263": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1265": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11010,
        11078
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "1267": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11010,
        11078
      ],
      "op": "DUP3",
      "path": "12"
    },
    "1268": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11010,
        11078
      ],
      "op": "ADD",
      "path": "12"
    },
    "1269": {
      "op": "MSTORE"
    },
    "1270": {
      "op": "PUSH1",
      "value": "0x1D"
    },
    "1272": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1274": {
      "op": "DUP3"
    },
    "1275": {
      "op": "ADD"
    },
    "1276": {
      "op": "MSTORE"
    },
    "1277": {
      "op": "PUSH32",
      "value": "0x45524332303A20696E73756666696369656E7420616C6C6F77616E6365000000"
    },
    "1310": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1312": {
      "op": "DUP3"
    },
    "1313": {
      "op": "ADD"
    },
    "1314": {
      "op": "MSTORE"
    },
    "1315": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1317": {
      "op": "ADD"
    },
    "1318": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11010,
        11078
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x350"
    },
    "1321": {
      "op": "JUMP"
    },
    "1322": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11010,
        11078
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "1323": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11120,
        11171
      ],
      "op": "PUSH2",
      "path": "12",
      "statement": 24,
      "value": "0x537"
    },
    "1326": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11129,
        11134
      ],
      "op": "DUP5",
      "path": "12"
    },
    "1327": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11136,
        11143
      ],
      "op": "DUP5",
      "path": "12"
    },
    "1328": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11164,
        11170
      ],
      "op": "DUP5",
      "path": "12"
    },
    "1329": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11145,
        11161
      ],
      "op": "DUP5",
      "path": "12"
    },
    "1330": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11145,
        11170
      ],
      "op": "SUB",
      "path": "12"
    },
    "1331": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11120,
        11128
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x39F"
    },
    "1334": {
      "fn": "ERC20._spendAllowance",
      "jump": "i",
      "offset": [
        11120,
        11171
      ],
      "op": "JUMP",
      "path": "12"
    },
    "1335": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11120,
        11171
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "1336": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10761,
        11202
      ],
      "op": "POP",
      "path": "12"
    },
    "1337": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10761,
        11202
      ],
      "op": "POP",
      "path": "12"
    },
    "1338": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10761,
        11202
      ],
      "op": "POP",
      "path": "12"
    },
    "1339": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10761,
        11202
      ],
      "op": "POP",
      "path": "12"
    },
    "1340": {
      "fn": "ERC20._spendAllowance",
      "jump": "o",
      "offset": [
        10761,
        11202
      ],
      "op": "JUMP",
      "path": "12"
    },
    "1341": {
      "fn": "ERC20._transfer",
      "offset": [
        7475,
        8126
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "1342": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1344": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1346": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1348": {
      "op": "SHL"
    },
    "1349": {
      "op": "SUB"
    },
    "1350": {
      "fn": "ERC20._transfer",
      "offset": [
        7601,
        7619
      ],
      "op": "DUP4",
      "path": "12",
      "statement": 25
    },
    "1351": {
      "branch": 38,
      "fn": "ERC20._transfer",
      "offset": [
        7601,
        7619
      ],
      "op": "AND",
      "path": "12"
    },
    "1352": {
      "fn": "ERC20._transfer",
      "offset": [
        7593,
        7661
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x5A1"
    },
    "1355": {
      "branch": 38,
      "fn": "ERC20._transfer",
      "offset": [
        7593,
        7661
      ],
      "op": "JUMPI",
      "path": "12"
    },
    "1356": {
      "fn": "ERC20._transfer",
      "offset": [
        7593,
        7661
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "1358": {
      "fn": "ERC20._transfer",
      "offset": [
        7593,
        7661
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "1359": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1363": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1365": {
      "op": "SHL"
    },
    "1366": {
      "fn": "ERC20._transfer",
      "offset": [
        7593,
        7661
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1367": {
      "fn": "ERC20._transfer",
      "offset": [
        7593,
        7661
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1368": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1370": {
      "fn": "ERC20._transfer",
      "offset": [
        7593,
        7661
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "1372": {
      "fn": "ERC20._transfer",
      "offset": [
        7593,
        7661
      ],
      "op": "DUP3",
      "path": "12"
    },
    "1373": {
      "fn": "ERC20._transfer",
      "offset": [
        7593,
        7661
      ],
      "op": "ADD",
      "path": "12"
    },
    "1374": {
      "op": "MSTORE"
    },
    "1375": {
      "op": "PUSH1",
      "value": "0x25"
    },
    "1377": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1379": {
      "op": "DUP3"
    },
    "1380": {
      "op": "ADD"
    },
    "1381": {
      "op": "MSTORE"
    },
    "1382": {
      "op": "PUSH32",
      "value": "0x45524332303A207472616E736665722066726F6D20746865207A65726F206164"
    },
    "1415": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1417": {
      "op": "DUP3"
    },
    "1418": {
      "op": "ADD"
    },
    "1419": {
      "op": "MSTORE"
    },
    "1420": {
      "op": "PUSH5",
      "value": "0x6472657373"
    },
    "1426": {
      "op": "PUSH1",
      "value": "0xD8"
    },
    "1428": {
      "op": "SHL"
    },
    "1429": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1431": {
      "op": "DUP3"
    },
    "1432": {
      "op": "ADD"
    },
    "1433": {
      "op": "MSTORE"
    },
    "1434": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1436": {
      "op": "ADD"
    },
    "1437": {
      "fn": "ERC20._transfer",
      "offset": [
        7593,
        7661
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x350"
    },
    "1440": {
      "op": "JUMP"
    },
    "1441": {
      "fn": "ERC20._transfer",
      "offset": [
        7593,
        7661
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "1442": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1444": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1446": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1448": {
      "op": "SHL"
    },
    "1449": {
      "op": "SUB"
    },
    "1450": {
      "fn": "ERC20._transfer",
      "offset": [
        7679,
        7695
      ],
      "op": "DUP3",
      "path": "12",
      "statement": 26
    },
    "1451": {
      "branch": 39,
      "fn": "ERC20._transfer",
      "offset": [
        7679,
        7695
      ],
      "op": "AND",
      "path": "12"
    },
    "1452": {
      "fn": "ERC20._transfer",
      "offset": [
        7671,
        7735
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x603"
    },
    "1455": {
      "branch": 39,
      "fn": "ERC20._transfer",
      "offset": [
        7671,
        7735
      ],
      "op": "JUMPI",
      "path": "12"
    },
    "1456": {
      "fn": "ERC20._transfer",
      "offset": [
        7671,
        7735
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "1458": {
      "fn": "ERC20._transfer",
      "offset": [
        7671,
        7735
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "1459": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1463": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1465": {
      "op": "SHL"
    },
    "1466": {
      "fn": "ERC20._transfer",
      "offset": [
        7671,
        7735
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1467": {
      "fn": "ERC20._transfer",
      "offset": [
        7671,
        7735
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1468": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1470": {
      "fn": "ERC20._transfer",
      "offset": [
        7671,
        7735
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "1472": {
      "fn": "ERC20._transfer",
      "offset": [
        7671,
        7735
      ],
      "op": "DUP3",
      "path": "12"
    },
    "1473": {
      "fn": "ERC20._transfer",
      "offset": [
        7671,
        7735
      ],
      "op": "ADD",
      "path": "12"
    },
    "1474": {
      "op": "MSTORE"
    },
    "1475": {
      "op": "PUSH1",
      "value": "0x23"
    },
    "1477": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1479": {
      "op": "DUP3"
    },
    "1480": {
      "op": "ADD"
    },
    "1481": {
      "op": "MSTORE"
    },
    "1482": {
      "op": "PUSH32",
      "value": "0x45524332303A207472616E7366657220746F20746865207A65726F2061646472"
    },
    "1515": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1517": {
      "op": "DUP3"
    },
    "1518": {
      "op": "ADD"
    },
    "1519": {
      "op": "MSTORE"
    },
    "1520": {
      "op": "PUSH3",
      "value": "0x657373"
    },
    "1524": {
      "op": "PUSH1",
      "value": "0xE8"
    },
    "1526": {
      "op": "SHL"
    },
    "1527": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1529": {
      "op": "DUP3"
    },
    "1530": {
      "op": "ADD"
    },
    "1531": {
      "op": "MSTORE"
    },
    "1532": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1534": {
      "op": "ADD"
    },
    "1535": {
      "fn": "ERC20._transfer",
      "offset": [
        7671,
        7735
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x350"
    },
    "1538": {
      "op": "JUMP"
    },
    "1539": {
      "fn": "ERC20._transfer",
      "offset": [
        7671,
        7735
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "1540": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1542": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1544": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1546": {
      "op": "SHL"
    },
    "1547": {
      "op": "SUB"
    },
    "1548": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "DUP4",
      "path": "12"
    },
    "1549": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "AND",
      "path": "12"
    },
    "1550": {
      "fn": "ERC20._transfer",
      "offset": [
        7795,
        7814
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "1552": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1553": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1554": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1555": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x20"
    },
    "1557": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1558": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1559": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1560": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "1562": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1563": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "KECCAK256",
      "path": "12"
    },
    "1564": {
      "fn": "ERC20._transfer",
      "offset": [
        7817,
        7832
      ],
      "op": "SLOAD",
      "path": "12"
    },
    "1565": {
      "fn": "ERC20._transfer",
      "offset": [
        7850,
        7871
      ],
      "op": "DUP2",
      "path": "12",
      "statement": 27
    },
    "1566": {
      "fn": "ERC20._transfer",
      "offset": [
        7850,
        7871
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1567": {
      "fn": "ERC20._transfer",
      "offset": [
        7850,
        7871
      ],
      "op": "LT",
      "path": "12"
    },
    "1568": {
      "branch": 40,
      "fn": "ERC20._transfer",
      "offset": [
        7850,
        7871
      ],
      "op": "ISZERO",
      "path": "12"
    },
    "1569": {
      "fn": "ERC20._transfer",
      "offset": [
        7842,
        7914
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x67B"
    },
    "1572": {
      "branch": 40,
      "fn": "ERC20._transfer",
      "offset": [
        7842,
        7914
      ],
      "op": "JUMPI",
      "path": "12"
    },
    "1573": {
      "fn": "ERC20._transfer",
      "offset": [
        7842,
        7914
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "1575": {
      "fn": "ERC20._transfer",
      "offset": [
        7842,
        7914
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "1576": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1580": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1582": {
      "op": "SHL"
    },
    "1583": {
      "fn": "ERC20._transfer",
      "offset": [
        7842,
        7914
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1584": {
      "fn": "ERC20._transfer",
      "offset": [
        7842,
        7914
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1585": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1587": {
      "fn": "ERC20._transfer",
      "offset": [
        7842,
        7914
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x4"
    },
    "1589": {
      "fn": "ERC20._transfer",
      "offset": [
        7842,
        7914
      ],
      "op": "DUP3",
      "path": "12"
    },
    "1590": {
      "fn": "ERC20._transfer",
      "offset": [
        7842,
        7914
      ],
      "op": "ADD",
      "path": "12"
    },
    "1591": {
      "op": "MSTORE"
    },
    "1592": {
      "op": "PUSH1",
      "value": "0x26"
    },
    "1594": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1596": {
      "op": "DUP3"
    },
    "1597": {
      "op": "ADD"
    },
    "1598": {
      "op": "MSTORE"
    },
    "1599": {
      "op": "PUSH32",
      "value": "0x45524332303A207472616E7366657220616D6F756E7420657863656564732062"
    },
    "1632": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1634": {
      "op": "DUP3"
    },
    "1635": {
      "op": "ADD"
    },
    "1636": {
      "op": "MSTORE"
    },
    "1637": {
      "op": "PUSH6",
      "value": "0x616C616E6365"
    },
    "1644": {
      "op": "PUSH1",
      "value": "0xD0"
    },
    "1646": {
      "op": "SHL"
    },
    "1647": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1649": {
      "op": "DUP3"
    },
    "1650": {
      "op": "ADD"
    },
    "1651": {
      "op": "MSTORE"
    },
    "1652": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1654": {
      "op": "ADD"
    },
    "1655": {
      "fn": "ERC20._transfer",
      "offset": [
        7842,
        7914
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x350"
    },
    "1658": {
      "op": "JUMP"
    },
    "1659": {
      "fn": "ERC20._transfer",
      "offset": [
        7842,
        7914
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "1660": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1662": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1664": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1666": {
      "op": "SHL"
    },
    "1667": {
      "op": "SUB"
    },
    "1668": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "DUP1",
      "path": "12",
      "statement": 28
    },
    "1669": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "DUP6",
      "path": "12"
    },
    "1670": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "AND",
      "path": "12"
    },
    "1671": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7957
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x0"
    },
    "1673": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1674": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1675": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1676": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x20"
    },
    "1678": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1679": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1680": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1681": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "1683": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "DUP1",
      "path": "12"
    },
    "1684": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "DUP3",
      "path": "12"
    },
    "1685": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7963
      ],
      "op": "KECCAK256",
      "path": "12"
    },
    "1686": {
      "fn": "ERC20._transfer",
      "offset": [
        7966,
        7986
      ],
      "op": "DUP6",
      "path": "12"
    },
    "1687": {
      "fn": "ERC20._transfer",
      "offset": [
        7966,
        7986
      ],
      "op": "DUP6",
      "path": "12"
    },
    "1688": {
      "fn": "ERC20._transfer",
      "offset": [
        7966,
        7986
      ],
      "op": "SUB",
      "path": "12"
    },
    "1689": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7986
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1690": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7986
      ],
      "op": "SSTORE",
      "path": "12"
    },
    "1691": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8019
      ],
      "op": "SWAP2",
      "path": "12",
      "statement": 29
    },
    "1692": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8019
      ],
      "op": "DUP6",
      "path": "12"
    },
    "1693": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8019
      ],
      "op": "AND",
      "path": "12"
    },
    "1694": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8019
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1695": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8019
      ],
      "op": "MSTORE",
      "path": "12"
    },
    "1696": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8019
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1697": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8019
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1698": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8019
      ],
      "op": "KECCAK256",
      "path": "12"
    },
    "1699": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "DUP1",
      "path": "12"
    },
    "1700": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "SLOAD",
      "path": "12"
    },
    "1701": {
      "fn": "ERC20._transfer",
      "offset": [
        7980,
        7986
      ],
      "op": "DUP5",
      "path": "12"
    },
    "1702": {
      "fn": "ERC20._transfer",
      "offset": [
        7980,
        7986
      ],
      "op": "SWAP3",
      "path": "12"
    },
    "1703": {
      "fn": "ERC20._transfer",
      "offset": [
        7948,
        7957
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1704": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x6B2"
    },
    "1707": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1708": {
      "fn": "ERC20._transfer",
      "offset": [
        7980,
        7986
      ],
      "op": "DUP5",
      "path": "12"
    },
    "1709": {
      "fn": "ERC20._transfer",
      "offset": [
        7980,
        7986
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1710": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x963"
    },
    "1713": {
      "fn": "ERC20._transfer",
      "jump": "i",
      "offset": [
        8006,
        8029
      ],
      "op": "JUMP",
      "path": "12"
    },
    "1714": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "1715": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "SWAP3",
      "path": "12"
    },
    "1716": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "POP",
      "path": "12"
    },
    "1717": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "POP",
      "path": "12"
    },
    "1718": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "DUP2",
      "path": "12"
    },
    "1719": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1720": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "SSTORE",
      "path": "12"
    },
    "1721": {
      "fn": "ERC20._transfer",
      "offset": [
        8006,
        8029
      ],
      "op": "POP",
      "path": "12"
    },
    "1722": {
      "fn": "ERC20._transfer",
      "offset": [
        8060,
        8062
      ],
      "op": "DUP3",
      "path": "12",
      "statement": 30
    },
    "1723": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1725": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1727": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1729": {
      "op": "SHL"
    },
    "1730": {
      "op": "SUB"
    },
    "1731": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "AND",
      "path": "12"
    },
    "1732": {
      "fn": "ERC20._transfer",
      "offset": [
        8054,
        8058
      ],
      "op": "DUP5",
      "path": "12"
    },
    "1733": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1735": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1737": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1739": {
      "op": "SHL"
    },
    "1740": {
      "op": "SUB"
    },
    "1741": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "AND",
      "path": "12"
    },
    "1742": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "PUSH32",
      "path": "12",
      "value": "0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF"
    },
    "1775": {
      "fn": "ERC20._transfer",
      "offset": [
        8064,
        8070
      ],
      "op": "DUP5",
      "path": "12"
    },
    "1776": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "1778": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "1779": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "PUSH2",
      "path": "12",
      "value": "0x6FE"
    },
    "1782": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "1783": {
      "op": "DUP2"
    },
    "1784": {
      "op": "MSTORE"
    },
    "1785": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1787": {
      "op": "ADD"
    },
    "1788": {
      "op": "SWAP1"
    },
    "1789": {
      "op": "JUMP"
    },
    "1790": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "JUMPDEST",
      "path": "12"
    },
    "1791": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "PUSH1",
      "path": "12",
      "value": "0x40"
    },
    "1793": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "MLOAD",
      "path": "12"
    },
    "1794": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "DUP1",
      "path": "12"
    },
    "1795": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "SWAP2",
      "path": "12"
    },
    "1796": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "SUB",
      "path": "12"
    },
    "1797": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "SWAP1",
      "path": "12"
    },
    "1798": {
      "fn": "ERC20._transfer",
      "offset": [
        8045,
        8071
      ],
      "op": "LOG3",
      "path": "12"
    },
    "1799": {
      "fn": "ERC20._transfer",
      "offset": [
        8082,
        8119
      ],
      "op": "PUSH2",
      "path": "12",
      "statement": 31,
      "value": "0x537"
    },
    "1802": {
      "fn": "ERC20._beforeTokenTransfer",
      "offset": [
        11786,
        11907
      ],
      "op": "JUMP",
      "path": "12"
    },
    "1803": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        729,
        934
      ],
      "op": "JUMPDEST",
      "path": "70"
    },
    "1804": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "PUSH1",
      "path": "70",
      "statement": 32,
      "value": "0x40"
    },
    "1806": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "MLOAD",
      "path": "70"
    },
    "1807": {
      "op": "PUSH4",
      "value": "0x5260769B"
    },
    "1812": {
      "op": "PUSH1",
      "value": "0xE1"
    },
    "1814": {
      "op": "SHL"
    },
    "1815": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "DUP2",
      "path": "70"
    },
    "1816": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "MSTORE",
      "path": "70"
    },
    "1817": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        862,
        865
      ],
      "op": "DUP5",
      "path": "70"
    },
    "1818": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        862,
        865
      ],
      "op": "SWAP1",
      "path": "70"
    },
    "1819": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1821": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1823": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1825": {
      "op": "SHL"
    },
    "1826": {
      "op": "SUB"
    },
    "1827": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        900
      ],
      "op": "DUP3",
      "path": "70"
    },
    "1828": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        900
      ],
      "op": "AND",
      "path": "70"
    },
    "1829": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        900
      ],
      "op": "SWAP1",
      "path": "70"
    },
    "1830": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        900
      ],
      "op": "PUSH4",
      "path": "70",
      "value": "0xA4C0ED36"
    },
    "1835": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        900
      ],
      "op": "SWAP1",
      "path": "70"
    },
    "1836": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x73F"
    },
    "1839": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "SWAP1",
      "path": "70"
    },
    "1840": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        901,
        911
      ],
      "op": "CALLER",
      "path": "70"
    },
    "1841": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        901,
        911
      ],
      "op": "SWAP1",
      "path": "70"
    },
    "1842": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        913,
        919
      ],
      "op": "DUP9",
      "path": "70"
    },
    "1843": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        913,
        919
      ],
      "op": "SWAP1",
      "path": "70"
    },
    "1844": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        921,
        926
      ],
      "op": "DUP9",
      "path": "70"
    },
    "1845": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        921,
        926
      ],
      "op": "SWAP1",
      "path": "70"
    },
    "1846": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        921,
        926
      ],
      "op": "DUP9",
      "path": "70"
    },
    "1847": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        921,
        926
      ],
      "op": "SWAP1",
      "path": "70"
    },
    "1848": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x4"
    },
    "1850": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "ADD",
      "path": "70"
    },
    "1851": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x8C8"
    },
    "1854": {
      "fn": "ChainlinkToken.contractFallback",
      "jump": "i",
      "offset": [
        876,
        927
      ],
      "op": "JUMP",
      "path": "70"
    },
    "1855": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "JUMPDEST",
      "path": "70"
    },
    "1856": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x0"
    },
    "1858": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x40"
    },
    "1860": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "MLOAD",
      "path": "70"
    },
    "1861": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "DUP1",
      "path": "70"
    },
    "1862": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "DUP4",
      "path": "70"
    },
    "1863": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "SUB",
      "path": "70"
    },
    "1864": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "DUP2",
      "path": "70"
    },
    "1865": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x0"
    },
    "1867": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "DUP8",
      "path": "70"
    },
    "1868": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "DUP1",
      "path": "70"
    },
    "1869": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "EXTCODESIZE",
      "path": "70"
    },
    "1870": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "ISZERO",
      "path": "70"
    },
    "1871": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "DUP1",
      "path": "70"
    },
    "1872": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "ISZERO",
      "path": "70"
    },
    "1873": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x759"
    },
    "1876": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "1877": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x0"
    },
    "1879": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "DUP1",
      "path": "70"
    },
    "1880": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "REVERT",
      "path": "70"
    },
    "1881": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "JUMPDEST",
      "path": "70"
    },
    "1882": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "POP",
      "path": "70"
    },
    "1883": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "GAS",
      "path": "70"
    },
    "1884": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "CALL",
      "path": "70"
    },
    "1885": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "ISZERO",
      "path": "70"
    },
    "1886": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "DUP1",
      "path": "70"
    },
    "1887": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "ISZERO",
      "path": "70"
    },
    "1888": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "PUSH2",
      "path": "70",
      "value": "0x76D"
    },
    "1891": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "JUMPI",
      "path": "70"
    },
    "1892": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "RETURNDATASIZE",
      "path": "70"
    },
    "1893": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x0"
    },
    "1895": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "DUP1",
      "path": "70"
    },
    "1896": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "RETURNDATACOPY",
      "path": "70"
    },
    "1897": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "RETURNDATASIZE",
      "path": "70"
    },
    "1898": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "PUSH1",
      "path": "70",
      "value": "0x0"
    },
    "1900": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "REVERT",
      "path": "70"
    },
    "1901": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "JUMPDEST",
      "path": "70"
    },
    "1902": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "POP",
      "path": "70"
    },
    "1903": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "POP",
      "path": "70"
    },
    "1904": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "POP",
      "path": "70"
    },
    "1905": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        876,
        927
      ],
      "op": "POP",
      "path": "70"
    },
    "1906": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        729,
        934
      ],
      "op": "POP",
      "path": "70"
    },
    "1907": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        729,
        934
      ],
      "op": "POP",
      "path": "70"
    },
    "1908": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        729,
        934
      ],
      "op": "POP",
      "path": "70"
    },
    "1909": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        729,
        934
      ],
      "op": "POP",
      "path": "70"
    },
    "1910": {
      "fn": "ChainlinkToken.contractFallback",
      "offset": [
        729,
        934
      ],
      "op": "POP",
      "path": "70"
    },
    "1911": {
      "fn": "ChainlinkToken.contractFallback",
      "jump": "o",
      "offset": [
        729,
        934
      ],
      "op": "JUMP",
      "path": "70"
    },
    "1912": {
      "op": "JUMPDEST"
    },
    "1913": {
      "op": "DUP1"
    },
    "1914": {
      "op": "CALLDATALOAD"
    },
    "1915": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1917": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1919": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1921": {
      "op": "SHL"
    },
    "1922": {
      "op": "SUB"
    },
    "1923": {
      "op": "DUP2"
    },
    "1924": {
      "op": "AND"
    },
    "1925": {
      "op": "DUP2"
    },
    "1926": {
      "op": "EQ"
    },
    "1927": {
      "op": "PUSH2",
      "value": "0x2D2"
    },
    "1930": {
      "op": "JUMPI"
    },
    "1931": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "1933": {
      "op": "DUP1"
    },
    "1934": {
      "op": "REVERT"
    },
    "1935": {
      "op": "JUMPDEST"
    },
    "1936": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "1938": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1940": {
      "op": "DUP3"
    },
    "1941": {
      "op": "DUP5"
    },
    "1942": {
      "op": "SUB"
    },
    "1943": {
      "op": "SLT"
    },
    "1944": {
      "op": "ISZERO"
    },
    "1945": {
      "op": "PUSH2",
      "value": "0x7A0"
    },
    "1948": {
      "op": "JUMPI"
    },
    "1949": {
      "op": "DUP1"
    },
    "1950": {
      "op": "DUP2"
    },
    "1951": {
      "op": "REVERT"
    },
    "1952": {
      "op": "JUMPDEST"
    },
    "1953": {
      "op": "PUSH2",
      "value": "0x7A9"
    },
    "1956": {
      "op": "DUP3"
    },
    "1957": {
      "op": "PUSH2",
      "value": "0x778"
    },
    "1960": {
      "jump": "i",
      "op": "JUMP"
    },
    "1961": {
      "op": "JUMPDEST"
    },
    "1962": {
      "op": "SWAP4"
    },
    "1963": {
      "op": "SWAP3"
    },
    "1964": {
      "op": "POP"
    },
    "1965": {
      "op": "POP"
    },
    "1966": {
      "op": "POP"
    },
    "1967": {
      "jump": "o",
      "op": "JUMP"
    },
    "1968": {
      "op": "JUMPDEST"
    },
    "1969": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "1971": {
      "op": "DUP1"
    },
    "1972": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "1974": {
      "op": "DUP4"
    },
    "1975": {
      "op": "DUP6"
    },
    "1976": {
      "op": "SUB"
    },
    "1977": {
      "op": "SLT"
    },
    "1978": {
      "op": "ISZERO"
    },
    "1979": {
      "op": "PUSH2",
      "value": "0x7C2"
    },
    "1982": {
      "op": "JUMPI"
    },
    "1983": {
      "op": "DUP1"
    },
    "1984": {
      "op": "DUP2"
    },
    "1985": {
      "op": "REVERT"
    },
    "1986": {
      "op": "JUMPDEST"
    },
    "1987": {
      "op": "PUSH2",
      "value": "0x7CB"
    },
    "1990": {
      "op": "DUP4"
    },
    "1991": {
      "op": "PUSH2",
      "value": "0x778"
    },
    "1994": {
      "jump": "i",
      "op": "JUMP"
    },
    "1995": {
      "op": "JUMPDEST"
    },
    "1996": {
      "op": "SWAP2"
    },
    "1997": {
      "op": "POP"
    },
    "1998": {
      "op": "PUSH2",
      "value": "0x7D9"
    },
    "2001": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2003": {
      "op": "DUP5"
    },
    "2004": {
      "op": "ADD"
    },
    "2005": {
      "op": "PUSH2",
      "value": "0x778"
    },
    "2008": {
      "jump": "i",
      "op": "JUMP"
    },
    "2009": {
      "op": "JUMPDEST"
    },
    "2010": {
      "op": "SWAP1"
    },
    "2011": {
      "op": "POP"
    },
    "2012": {
      "op": "SWAP3"
    },
    "2013": {
      "op": "POP"
    },
    "2014": {
      "op": "SWAP3"
    },
    "2015": {
      "op": "SWAP1"
    },
    "2016": {
      "op": "POP"
    },
    "2017": {
      "jump": "o",
      "op": "JUMP"
    },
    "2018": {
      "op": "JUMPDEST"
    },
    "2019": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2021": {
      "op": "DUP1"
    },
    "2022": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2024": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "2026": {
      "op": "DUP5"
    },
    "2027": {
      "op": "DUP7"
    },
    "2028": {
      "op": "SUB"
    },
    "2029": {
      "op": "SLT"
    },
    "2030": {
      "op": "ISZERO"
    },
    "2031": {
      "op": "PUSH2",
      "value": "0x7F6"
    },
    "2034": {
      "op": "JUMPI"
    },
    "2035": {
      "op": "DUP1"
    },
    "2036": {
      "op": "DUP2"
    },
    "2037": {
      "op": "REVERT"
    },
    "2038": {
      "op": "JUMPDEST"
    },
    "2039": {
      "op": "PUSH2",
      "value": "0x7FF"
    },
    "2042": {
      "op": "DUP5"
    },
    "2043": {
      "op": "PUSH2",
      "value": "0x778"
    },
    "2046": {
      "jump": "i",
      "op": "JUMP"
    },
    "2047": {
      "op": "JUMPDEST"
    },
    "2048": {
      "op": "SWAP3"
    },
    "2049": {
      "op": "POP"
    },
    "2050": {
      "op": "PUSH2",
      "value": "0x80D"
    },
    "2053": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2055": {
      "op": "DUP6"
    },
    "2056": {
      "op": "ADD"
    },
    "2057": {
      "op": "PUSH2",
      "value": "0x778"
    },
    "2060": {
      "jump": "i",
      "op": "JUMP"
    },
    "2061": {
      "op": "JUMPDEST"
    },
    "2062": {
      "op": "SWAP2"
    },
    "2063": {
      "op": "POP"
    },
    "2064": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2066": {
      "op": "DUP5"
    },
    "2067": {
      "op": "ADD"
    },
    "2068": {
      "op": "CALLDATALOAD"
    },
    "2069": {
      "op": "SWAP1"
    },
    "2070": {
      "op": "POP"
    },
    "2071": {
      "op": "SWAP3"
    },
    "2072": {
      "op": "POP"
    },
    "2073": {
      "op": "SWAP3"
    },
    "2074": {
      "op": "POP"
    },
    "2075": {
      "op": "SWAP3"
    },
    "2076": {
      "jump": "o",
      "op": "JUMP"
    },
    "2077": {
      "op": "JUMPDEST"
    },
    "2078": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2080": {
      "op": "DUP1"
    },
    "2081": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2083": {
      "op": "DUP4"
    },
    "2084": {
      "op": "DUP6"
    },
    "2085": {
      "op": "SUB"
    },
    "2086": {
      "op": "SLT"
    },
    "2087": {
      "op": "ISZERO"
    },
    "2088": {
      "op": "PUSH2",
      "value": "0x82F"
    },
    "2091": {
      "op": "JUMPI"
    },
    "2092": {
      "op": "DUP2"
    },
    "2093": {
      "op": "DUP3"
    },
    "2094": {
      "op": "REVERT"
    },
    "2095": {
      "op": "JUMPDEST"
    },
    "2096": {
      "op": "PUSH2",
      "value": "0x838"
    },
    "2099": {
      "op": "DUP4"
    },
    "2100": {
      "op": "PUSH2",
      "value": "0x778"
    },
    "2103": {
      "jump": "i",
      "op": "JUMP"
    },
    "2104": {
      "op": "JUMPDEST"
    },
    "2105": {
      "op": "SWAP5"
    },
    "2106": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2108": {
      "op": "SWAP4"
    },
    "2109": {
      "op": "SWAP1"
    },
    "2110": {
      "op": "SWAP4"
    },
    "2111": {
      "op": "ADD"
    },
    "2112": {
      "op": "CALLDATALOAD"
    },
    "2113": {
      "op": "SWAP4"
    },
    "2114": {
      "op": "POP"
    },
    "2115": {
      "op": "POP"
    },
    "2116": {
      "op": "POP"
    },
    "2117": {
      "jump": "o",
      "op": "JUMP"
    },
    "2118": {
      "op": "JUMPDEST"
    },
    "2119": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2121": {
      "op": "DUP1"
    },
    "2122": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2124": {
      "op": "DUP1"
    },
    "2125": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "2127": {
      "op": "DUP6"
    },
    "2128": {
      "op": "DUP8"
    },
    "2129": {
      "op": "SUB"
    },
    "2130": {
      "op": "SLT"
    },
    "2131": {
      "op": "ISZERO"
    },
    "2132": {
      "op": "PUSH2",
      "value": "0x85B"
    },
    "2135": {
      "op": "JUMPI"
    },
    "2136": {
      "op": "DUP1"
    },
    "2137": {
      "op": "DUP2"
    },
    "2138": {
      "op": "REVERT"
    },
    "2139": {
      "op": "JUMPDEST"
    },
    "2140": {
      "op": "PUSH2",
      "value": "0x864"
    },
    "2143": {
      "op": "DUP6"
    },
    "2144": {
      "op": "PUSH2",
      "value": "0x778"
    },
    "2147": {
      "jump": "i",
      "op": "JUMP"
    },
    "2148": {
      "op": "JUMPDEST"
    },
    "2149": {
      "op": "SWAP4"
    },
    "2150": {
      "op": "POP"
    },
    "2151": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2153": {
      "op": "DUP6"
    },
    "2154": {
      "op": "ADD"
    },
    "2155": {
      "op": "CALLDATALOAD"
    },
    "2156": {
      "op": "SWAP3"
    },
    "2157": {
      "op": "POP"
    },
    "2158": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2160": {
      "op": "DUP6"
    },
    "2161": {
      "op": "ADD"
    },
    "2162": {
      "op": "CALLDATALOAD"
    },
    "2163": {
      "op": "PUSH8",
      "value": "0xFFFFFFFFFFFFFFFF"
    },
    "2172": {
      "op": "DUP1"
    },
    "2173": {
      "op": "DUP3"
    },
    "2174": {
      "op": "GT"
    },
    "2175": {
      "op": "ISZERO"
    },
    "2176": {
      "op": "PUSH2",
      "value": "0x887"
    },
    "2179": {
      "op": "JUMPI"
    },
    "2180": {
      "op": "DUP3"
    },
    "2181": {
      "op": "DUP4"
    },
    "2182": {
      "op": "REVERT"
    },
    "2183": {
      "op": "JUMPDEST"
    },
    "2184": {
      "op": "DUP2"
    },
    "2185": {
      "op": "DUP8"
    },
    "2186": {
      "op": "ADD"
    },
    "2187": {
      "op": "SWAP2"
    },
    "2188": {
      "op": "POP"
    },
    "2189": {
      "op": "DUP8"
    },
    "2190": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "2192": {
      "op": "DUP4"
    },
    "2193": {
      "op": "ADD"
    },
    "2194": {
      "op": "SLT"
    },
    "2195": {
      "op": "PUSH2",
      "value": "0x89A"
    },
    "2198": {
      "op": "JUMPI"
    },
    "2199": {
      "op": "DUP3"
    },
    "2200": {
      "op": "DUP4"
    },
    "2201": {
      "op": "REVERT"
    },
    "2202": {
      "op": "JUMPDEST"
    },
    "2203": {
      "op": "DUP2"
    },
    "2204": {
      "op": "CALLDATALOAD"
    },
    "2205": {
      "op": "DUP2"
    },
    "2206": {
      "op": "DUP2"
    },
    "2207": {
      "op": "GT"
    },
    "2208": {
      "op": "ISZERO"
    },
    "2209": {
      "op": "PUSH2",
      "value": "0x8A8"
    },
    "2212": {
      "op": "JUMPI"
    },
    "2213": {
      "op": "DUP4"
    },
    "2214": {
      "op": "DUP5"
    },
    "2215": {
      "op": "REVERT"
    },
    "2216": {
      "op": "JUMPDEST"
    },
    "2217": {
      "op": "DUP9"
    },
    "2218": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2220": {
      "op": "DUP3"
    },
    "2221": {
      "op": "DUP6"
    },
    "2222": {
      "op": "ADD"
    },
    "2223": {
      "op": "ADD"
    },
    "2224": {
      "op": "GT"
    },
    "2225": {
      "op": "ISZERO"
    },
    "2226": {
      "op": "PUSH2",
      "value": "0x8B9"
    },
    "2229": {
      "op": "JUMPI"
    },
    "2230": {
      "op": "DUP4"
    },
    "2231": {
      "op": "DUP5"
    },
    "2232": {
      "op": "REVERT"
    },
    "2233": {
      "op": "JUMPDEST"
    },
    "2234": {
      "op": "SWAP6"
    },
    "2235": {
      "op": "SWAP9"
    },
    "2236": {
      "op": "SWAP5"
    },
    "2237": {
      "op": "SWAP8"
    },
    "2238": {
      "op": "POP"
    },
    "2239": {
      "op": "POP"
    },
    "2240": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2242": {
      "op": "ADD"
    },
    "2243": {
      "op": "SWAP5"
    },
    "2244": {
      "op": "POP"
    },
    "2245": {
      "op": "POP"
    },
    "2246": {
      "op": "POP"
    },
    "2247": {
      "jump": "o",
      "op": "JUMP"
    },
    "2248": {
      "op": "JUMPDEST"
    },
    "2249": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2251": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2253": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2255": {
      "op": "SHL"
    },
    "2256": {
      "op": "SUB"
    },
    "2257": {
      "op": "DUP6"
    },
    "2258": {
      "op": "AND"
    },
    "2259": {
      "op": "DUP2"
    },
    "2260": {
      "op": "MSTORE"
    },
    "2261": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2263": {
      "op": "DUP2"
    },
    "2264": {
      "op": "ADD"
    },
    "2265": {
      "op": "DUP5"
    },
    "2266": {
      "op": "SWAP1"
    },
    "2267": {
      "op": "MSTORE"
    },
    "2268": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "2270": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2272": {
      "op": "DUP3"
    },
    "2273": {
      "op": "ADD"
    },
    "2274": {
      "op": "DUP2"
    },
    "2275": {
      "op": "SWAP1"
    },
    "2276": {
      "op": "MSTORE"
    },
    "2277": {
      "op": "DUP2"
    },
    "2278": {
      "op": "ADD"
    },
    "2279": {
      "op": "DUP3"
    },
    "2280": {
      "op": "SWAP1"
    },
    "2281": {
      "op": "MSTORE"
    },
    "2282": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2284": {
      "op": "DUP3"
    },
    "2285": {
      "op": "DUP5"
    },
    "2286": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "2288": {
      "op": "DUP5"
    },
    "2289": {
      "op": "ADD"
    },
    "2290": {
      "op": "CALLDATACOPY"
    },
    "2291": {
      "op": "DUP2"
    },
    "2292": {
      "op": "DUP4"
    },
    "2293": {
      "op": "ADD"
    },
    "2294": {
      "op": "PUSH1",
      "value": "0x80"
    },
    "2296": {
      "op": "SWAP1"
    },
    "2297": {
      "op": "DUP2"
    },
    "2298": {
      "op": "ADD"
    },
    "2299": {
      "op": "SWAP2"
    },
    "2300": {
      "op": "SWAP1"
    },
    "2301": {
      "op": "SWAP2"
    },
    "2302": {
      "op": "MSTORE"
    },
    "2303": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "2305": {
      "op": "SWAP1"
    },
    "2306": {
      "op": "SWAP3"
    },
    "2307": {
      "op": "ADD"
    },
    "2308": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "2310": {
      "op": "NOT"
    },
    "2311": {
      "op": "AND"
    },
    "2312": {
      "op": "ADD"
    },
    "2313": {
      "op": "ADD"
    },
    "2314": {
      "op": "SWAP4"
    },
    "2315": {
      "op": "SWAP3"
    },
    "2316": {
      "op": "POP"
    },
    "2317": {
      "op": "POP"
    },
    "2318": {
      "op": "POP"
    },
    "2319": {
      "jump": "o",
      "op": "JUMP"
    },
    "2320": {
      "op": "JUMPDEST"
    },
    "2321": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2323": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2325": {
      "op": "DUP1"
    },
    "2326": {
      "op": "DUP4"
    },
    "2327": {
      "op": "MSTORE"
    },
    "2328": {
      "op": "DUP4"
    },
    "2329": {
      "op": "MLOAD"
    },
    "2330": {
      "op": "DUP1"
    },
    "2331": {
      "op": "DUP3"
    },
    "2332": {
      "op": "DUP6"
    },
    "2333": {
      "op": "ADD"
    },
    "2334": {
      "op": "MSTORE"
    },
    "2335": {
      "op": "DUP3"
    },
    "2336": {
      "op": "JUMPDEST"
    },
    "2337": {
      "op": "DUP2"
    },
    "2338": {
      "op": "DUP2"
    },
    "2339": {
      "op": "LT"
    },
    "2340": {
      "op": "ISZERO"
    },
    "2341": {
      "op": "PUSH2",
      "value": "0x93C"
    },
    "2344": {
      "op": "JUMPI"
    },
    "2345": {
      "op": "DUP6"
    },
    "2346": {
      "op": "DUP2"
    },
    "2347": {
      "op": "ADD"
    },
    "2348": {
      "op": "DUP4"
    },
    "2349": {
      "op": "ADD"
    },
    "2350": {
      "op": "MLOAD"
    },
    "2351": {
      "op": "DUP6"
    },
    "2352": {
      "op": "DUP3"
    },
    "2353": {
      "op": "ADD"
    },
    "2354": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2356": {
      "op": "ADD"
    },
    "2357": {
      "op": "MSTORE"
    },
    "2358": {
      "op": "DUP3"
    },
    "2359": {
      "op": "ADD"
    },
    "2360": {
      "op": "PUSH2",
      "value": "0x920"
    },
    "2363": {
      "op": "JUMP"
    },
    "2364": {
      "op": "JUMPDEST"
    },
    "2365": {
      "op": "DUP2"
    },
    "2366": {
      "op": "DUP2"
    },
    "2367": {
      "op": "GT"
    },
    "2368": {
      "op": "ISZERO"
    },
    "2369": {
      "op": "PUSH2",
      "value": "0x94D"
    },
    "2372": {
      "op": "JUMPI"
    },
    "2373": {
      "op": "DUP4"
    },
    "2374": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2376": {
      "op": "DUP4"
    },
    "2377": {
      "op": "DUP8"
    },
    "2378": {
      "op": "ADD"
    },
    "2379": {
      "op": "ADD"
    },
    "2380": {
      "op": "MSTORE"
    },
    "2381": {
      "op": "JUMPDEST"
    },
    "2382": {
      "op": "POP"
    },
    "2383": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "2385": {
      "op": "ADD"
    },
    "2386": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "2388": {
      "op": "NOT"
    },
    "2389": {
      "op": "AND"
    },
    "2390": {
      "op": "SWAP3"
    },
    "2391": {
      "op": "SWAP1"
    },
    "2392": {
      "op": "SWAP3"
    },
    "2393": {
      "op": "ADD"
    },
    "2394": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2396": {
      "op": "ADD"
    },
    "2397": {
      "op": "SWAP4"
    },
    "2398": {
      "op": "SWAP3"
    },
    "2399": {
      "op": "POP"
    },
    "2400": {
      "op": "POP"
    },
    "2401": {
      "op": "POP"
    },
    "2402": {
      "jump": "o",
      "op": "JUMP"
    },
    "2403": {
      "op": "JUMPDEST"
    },
    "2404": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2406": {
      "op": "DUP3"
    },
    "2407": {
      "op": "NOT"
    },
    "2408": {
      "op": "DUP3"
    },
    "2409": {
      "op": "GT"
    },
    "2410": {
      "op": "ISZERO"
    },
    "2411": {
      "op": "PUSH2",
      "value": "0x982"
    },
    "2414": {
      "op": "JUMPI"
    },
    "2415": {
      "op": "PUSH4",
      "value": "0x4E487B71"
    },
    "2420": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "2422": {
      "op": "SHL"
    },
    "2423": {
      "op": "DUP2"
    },
    "2424": {
      "op": "MSTORE"
    },
    "2425": {
      "op": "PUSH1",
      "value": "0x11"
    },
    "2427": {
      "op": "PUSH1",
      "value": "0x4"
    },
    "2429": {
      "op": "MSTORE"
    },
    "2430": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "2432": {
      "op": "DUP2"
    },
    "2433": {
      "op": "REVERT"
    },
    "2434": {
      "op": "JUMPDEST"
    },
    "2435": {
      "op": "POP"
    },
    "2436": {
      "op": "ADD"
    },
    "2437": {
      "op": "SWAP1"
    },
    "2438": {
      "jump": "o",
      "op": "JUMP"
    },
    "2439": {
      "op": "JUMPDEST"
    },
    "2440": {
      "op": "PUSH1",
      "value": "0x2"
    },
    "2442": {
      "op": "DUP2"
    },
    "2443": {
      "op": "DIV"
    },
    "2444": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2446": {
      "op": "DUP3"
    },
    "2447": {
      "op": "AND"
    },
    "2448": {
      "op": "DUP1"
    },
    "2449": {
      "op": "PUSH2",
      "value": "0x99B"
    },
    "2452": {
      "op": "JUMPI"
    },
    "2453": {
      "op": "PUSH1",
      "value": "0x7F"
    },
    "2455": {
      "op": "DUP3"
    },
    "2456": {
      "op": "AND"
    },
    "2457": {
      "op": "SWAP2"
    },
    "2458": {
      "op": "POP"
    },
    "2459": {
      "op": "JUMPDEST"
    },
    "2460": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2462": {
      "op": "DUP3"
    },
    "2463": {
      "op": "LT"
    },
    "2464": {
      "op": "DUP2"
    },
    "2465": {
      "op": "EQ"
    },
    "2466": {
      "op": "ISZERO"
    },
    "2467": {
      "op": "PUSH2",
      "value": "0x9BC"
    },
    "2470": {
      "op": "JUMPI"
    },
    "2471": {
      "op": "PUSH4",
      "value": "0x4E487B71"
    },
    "2476": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "2478": {
      "op": "SHL"
    },
    "2479": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2481": {
      "op": "MSTORE"
    },
    "2482": {
      "op": "PUSH1",
      "value": "0x22"
    },
    "2484": {
      "op": "PUSH1",
      "value": "0x4"
    },
    "2486": {
      "op": "MSTORE"
    },
    "2487": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "2489": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2491": {
      "op": "REVERT"
    },
    "2492": {
      "op": "JUMPDEST"
    },
    "2493": {
      "op": "POP"
    },
    "2494": {
      "op": "SWAP2"
    },
    "2495": {
      "op": "SWAP1"
    },
    "2496": {
      "op": "POP"
    },
    "2497": {
      "jump": "o",
      "op": "JUMP"
    }
  },
  "sha1": "dc5e37e0344e21f0421150a70b1ad1f3357a5d91",
  "source": "// SPDX-License-Identifier: MIT\npragma solidity 0.8.2;\n\nimport \"@openzeppelin/contracts/token/ERC20/ERC20.sol\";\n\nabstract contract ERC677Receiver {\n    function onTokenTransfer (address _sender, uint _value, bytes calldata _data) public virtual;\n}\n\ncontract ChainlinkToken is ERC20 {\n    constructor(address owner, uint256 supply) ERC20(\"Chainlink Dummy Token\", \"CDT\"){\n        _mint(owner, supply);\n    }\n\n    function transferAndCall(address _to, uint _value, bytes calldata _data) public returns (bool success){\n        super.transfer(_to, _value);\n        //  Transfer(msg.sender, _to, _value, _data);\n        if (isContract(_to)) {\n            contractFallback(_to, _value, _data);\n        }\n        return true;\n    }\n\n    function contractFallback(address _to, uint _value, bytes calldata _data) private {\n        ERC677Receiver receiver = ERC677Receiver(_to);\n        receiver.onTokenTransfer(msg.sender, _value, _data);\n    }\n\n    function isContract(address _addr) private view returns (bool hasCode) {\n        uint length;\n        assembly { length := extcodesize(_addr) }\n        return length > 0;\n    }\n}\n",
  "sourceMap": "249:869:70:-:0;;;288:117;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1978:113:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1978:113:12;;;2052:5;2044;:13;;;;;;;;;;;;:::i;:::-;-1:-1:-1;2067:17:12;;;;:7;;:17;;;;;:::i;:::-;;1978:113;;378:20:70::1;384:5;391:6;378:5;;;:20;;:::i;:::-;288:117:::0;;249:869;;8402:389:12;-1:-1:-1;;;;;8485:21:12;;8477:65;;;;-1:-1:-1;;;8477:65:12;;592:2:103;8477:65:12;;;574:21:103;631:2;611:18;;;604:30;670:33;650:18;;;643:61;721:18;;8477:65:12;;;;;;;;8629:6;8613:12;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;8645:18:12;;:9;:18;;;;;;;;;;:28;;8667:6;;8645:9;:28;;8667:6;;8645:28;:::i;:::-;;;;-1:-1:-1;;8688:37:12;;896:25:103;;;-1:-1:-1;;;;;8688:37:12;;;8705:1;;8688:37;;884:2:103;869:18;8688:37:12;;;;;;;8402:389;;:::o;249:869:70:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;249:869:70;;;-1:-1:-1;249:869:70;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;14:371:103;;;154:2;142:9;133:7;129:23;125:32;122:2;;;175:6;167;160:22;122:2;206:16;;-1:-1:-1;;;;;251:31:103;;241:42;;231:2;;302:6;294;287:22;231:2;375;360:18;;;;354:25;330:5;;354:25;;-1:-1:-1;;;112:273:103:o;932:229::-;;1003:1;999:6;996:1;993:13;990:2;;;-1:-1:-1;;;1029:33:103;;1085:4;1082:1;1075:15;1115:4;1036:3;1103:17;990:2;-1:-1:-1;1146:9:103;;980:181::o;1166:380::-;1251:1;1241:12;;1298:1;1288:12;;;1309:2;;1363:4;1355:6;1351:17;1341:27;;1309:2;1416;1408:6;1405:14;1385:18;1382:38;1379:2;;;1462:10;1457:3;1453:20;1450:1;1443:31;1497:4;1494:1;1487:15;1525:4;1522:1;1515:15;1379:2;;1221:325;;;:::o;:::-;249:869:70;;;;;;",
  "sourcePath": "contracts/examples/mock/ChainlinkToken.sol",
  "type": "contract"
}