{
  "abi": [
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name_",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "symbol_",
          "type": "string"
        },
        {
          "internalType": "uint256",
          "name": "initialSupply",
          "type": "uint256"
        },
        {
          "internalType": "uint8",
          "name": "decimals_",
          "type": "uint8"
        }
      ],
      "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": [
        {
          "internalType": "address",
          "name": "recipient",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "burn",
      "outputs": [],
      "stateMutability": "nonpayable",
      "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": [
        {
          "internalType": "address",
          "name": "recipient",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "mint",
      "outputs": [],
      "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": "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": {
    "105": "node_modules/@openzeppelin/contracts/utils/Context.sol",
    "21": "contracts/mocks/IMintableERC20.sol",
    "26": "contracts/mocks/TestCurrency.sol",
    "96": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol",
    "97": "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol",
    "98": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol"
  },
  "ast": {
    "absolutePath": "contracts/mocks/TestCurrency.sol",
    "exportedSymbols": {
      "ERC1967Proxy": [
        20821
      ],
      "ERC20": [
        20459
      ],
      "IMintableERC20": [
        12985
      ],
      "TestCurrency": [
        14022
      ]
    },
    "id": 14023,
    "license": "Apache-2.0",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 13939,
        "literals": [
          "solidity",
          "^",
          "0.8",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "38:23:26"
      },
      {
        "absolutePath": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol",
        "file": "@openzeppelin/contracts/token/ERC20/ERC20.sol",
        "id": 13941,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 14023,
        "sourceUnit": 20460,
        "src": "63:68:26",
        "symbolAliases": [
          {
            "foreign": {
              "id": 13940,
              "name": "ERC20",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "71:5:26",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "absolutePath": "node_modules/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol",
        "file": "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol",
        "id": 13943,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 14023,
        "sourceUnit": 20822,
        "src": "198:84:26",
        "symbolAliases": [
          {
            "foreign": {
              "id": 13942,
              "name": "ERC1967Proxy",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "206:12:26",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "absolutePath": "contracts/mocks/IMintableERC20.sol",
        "file": "./IMintableERC20.sol",
        "id": 13945,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 14023,
        "sourceUnit": 12986,
        "src": "283:52:26",
        "symbolAliases": [
          {
            "foreign": {
              "id": 13944,
              "name": "IMintableERC20",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "src": "291:14:26",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [
          {
            "baseName": {
              "id": 13946,
              "name": "ERC20",
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 20459,
              "src": "362:5:26"
            },
            "id": 13947,
            "nodeType": "InheritanceSpecifier",
            "src": "362:5:26"
          },
          {
            "baseName": {
              "id": 13948,
              "name": "IMintableERC20",
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 12985,
              "src": "369:14:26"
            },
            "id": 13949,
            "nodeType": "InheritanceSpecifier",
            "src": "369:14:26"
          }
        ],
        "contractDependencies": [],
        "contractKind": "contract",
        "fullyImplemented": true,
        "id": 14022,
        "linearizedBaseContracts": [
          14022,
          12985,
          20459,
          16271,
          16706,
          26491
        ],
        "name": "TestCurrency",
        "nameLocation": "346:12:26",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": false,
            "id": 13951,
            "mutability": "mutable",
            "name": "_owner",
            "nameLocation": "404:6:26",
            "nodeType": "VariableDeclaration",
            "scope": 14022,
            "src": "388:22:26",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_address",
              "typeString": "address"
            },
            "typeName": {
              "id": 13950,
              "name": "address",
              "nodeType": "ElementaryTypeName",
              "src": "388:7:26",
              "stateMutability": "nonpayable",
              "typeDescriptions": {
                "typeIdentifier": "t_address",
                "typeString": "address"
              }
            },
            "visibility": "private"
          },
          {
            "constant": false,
            "id": 13953,
            "mutability": "immutable",
            "name": "_decimals",
            "nameLocation": "439:9:26",
            "nodeType": "VariableDeclaration",
            "scope": 14022,
            "src": "414:34:26",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint8",
              "typeString": "uint8"
            },
            "typeName": {
              "id": 13952,
              "name": "uint8",
              "nodeType": "ElementaryTypeName",
              "src": "414:5:26",
              "typeDescriptions": {
                "typeIdentifier": "t_uint8",
                "typeString": "uint8"
              }
            },
            "visibility": "internal"
          },
          {
            "body": {
              "id": 13983,
              "nodeType": "Block",
              "src": "591:95:26",
              "statements": [
                {
                  "expression": {
                    "id": 13971,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 13968,
                      "name": "_owner",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13951,
                      "src": "597:6:26",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "expression": {
                        "id": 13969,
                        "name": "msg",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": -15,
                        "src": "606:3:26",
                        "typeDescriptions": {
                          "typeIdentifier": "t_magic_message",
                          "typeString": "msg"
                        }
                      },
                      "id": 13970,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "sender",
                      "nodeType": "MemberAccess",
                      "src": "606:10:26",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "597:19:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 13972,
                  "nodeType": "ExpressionStatement",
                  "src": "597:19:26"
                },
                {
                  "expression": {
                    "id": 13975,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 13973,
                      "name": "_decimals",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13953,
                      "src": "622:9:26",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint8",
                        "typeString": "uint8"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "id": 13974,
                      "name": "decimals_",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13961,
                      "src": "634:9:26",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint8",
                        "typeString": "uint8"
                      }
                    },
                    "src": "622:21:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "id": 13976,
                  "nodeType": "ExpressionStatement",
                  "src": "622:21:26"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "expression": {
                          "id": 13978,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": -15,
                          "src": "655:3:26",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 13979,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "src": "655:10:26",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "id": 13980,
                        "name": "initialSupply",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13959,
                        "src": "667:13:26",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 13977,
                      "name": "_mint",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20276,
                      "src": "649:5:26",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 13981,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "649:32:26",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 13982,
                  "nodeType": "ExpressionStatement",
                  "src": "649:32:26"
                }
              ]
            },
            "id": 13984,
            "implemented": true,
            "kind": "constructor",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 13964,
                    "name": "name_",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 13955,
                    "src": "575:5:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_memory_ptr",
                      "typeString": "string memory"
                    }
                  },
                  {
                    "id": 13965,
                    "name": "symbol_",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 13957,
                    "src": "582:7:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_memory_ptr",
                      "typeString": "string memory"
                    }
                  }
                ],
                "id": 13966,
                "kind": "baseConstructorSpecifier",
                "modifierName": {
                  "id": 13963,
                  "name": "ERC20",
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 20459,
                  "src": "569:5:26"
                },
                "nodeType": "ModifierInvocation",
                "src": "569:21:26"
              }
            ],
            "name": "",
            "nameLocation": "-1:-1:-1",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 13962,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13955,
                  "mutability": "mutable",
                  "name": "name_",
                  "nameLocation": "484:5:26",
                  "nodeType": "VariableDeclaration",
                  "scope": 13984,
                  "src": "470:19:26",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 13954,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "470:6:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13957,
                  "mutability": "mutable",
                  "name": "symbol_",
                  "nameLocation": "509:7:26",
                  "nodeType": "VariableDeclaration",
                  "scope": 13984,
                  "src": "495:21:26",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 13956,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "495:6:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13959,
                  "mutability": "mutable",
                  "name": "initialSupply",
                  "nameLocation": "530:13:26",
                  "nodeType": "VariableDeclaration",
                  "scope": 13984,
                  "src": "522:21:26",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13958,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "522:7:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13961,
                  "mutability": "mutable",
                  "name": "decimals_",
                  "nameLocation": "555:9:26",
                  "nodeType": "VariableDeclaration",
                  "scope": 13984,
                  "src": "549:15:26",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 13960,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "549:5:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "464:104:26"
            },
            "returnParameters": {
              "id": 13967,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "591:0:26"
            },
            "scope": 14022,
            "src": "453:233:26",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              19946
            ],
            "body": {
              "id": 13992,
              "nodeType": "Block",
              "src": "755:27:26",
              "statements": [
                {
                  "expression": {
                    "id": 13990,
                    "name": "_decimals",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 13953,
                    "src": "768:9:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "functionReturnParameters": 13989,
                  "id": 13991,
                  "nodeType": "Return",
                  "src": "761:16:26"
                }
              ]
            },
            "functionSelector": "313ce567",
            "id": 13993,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "decimals",
            "nameLocation": "699:8:26",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 13986,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "730:8:26"
            },
            "parameters": {
              "id": 13985,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "707:2:26"
            },
            "returnParameters": {
              "id": 13989,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13988,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 13993,
                  "src": "748:5:26",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 13987,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "748:5:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "747:7:26"
            },
            "scope": 14022,
            "src": "690:92:26",
            "stateMutability": "view",
            "virtual": true,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              12977
            ],
            "body": {
              "id": 14006,
              "nodeType": "Block",
              "src": "853:103:26",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 14002,
                        "name": "recipient",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13995,
                        "src": "933:9:26",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "id": 14003,
                        "name": "amount",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13997,
                        "src": "944:6:26",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 14001,
                      "name": "_mint",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20276,
                      "src": "927:5:26",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 14004,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "927:24:26",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "functionReturnParameters": 14000,
                  "id": 14005,
                  "nodeType": "Return",
                  "src": "920:31:26"
                }
              ]
            },
            "functionSelector": "40c10f19",
            "id": 14007,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "mint",
            "nameLocation": "795:4:26",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 13999,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "844:8:26"
            },
            "parameters": {
              "id": 13998,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13995,
                  "mutability": "mutable",
                  "name": "recipient",
                  "nameLocation": "808:9:26",
                  "nodeType": "VariableDeclaration",
                  "scope": 14007,
                  "src": "800:17:26",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13994,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "800:7:26",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13997,
                  "mutability": "mutable",
                  "name": "amount",
                  "nameLocation": "827:6:26",
                  "nodeType": "VariableDeclaration",
                  "scope": 14007,
                  "src": "819:14:26",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13996,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "819:7:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "799:35:26"
            },
            "returnParameters": {
              "id": 14000,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "853:0:26"
            },
            "scope": 14022,
            "src": "786:170:26",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              12984
            ],
            "body": {
              "id": 14020,
              "nodeType": "Block",
              "src": "1027:103:26",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 14016,
                        "name": "recipient",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14009,
                        "src": "1107:9:26",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "id": 14017,
                        "name": "amount",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14011,
                        "src": "1118:6:26",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 14015,
                      "name": "_burn",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 20348,
                      "src": "1101:5:26",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 14018,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1101:24:26",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "functionReturnParameters": 14014,
                  "id": 14019,
                  "nodeType": "Return",
                  "src": "1094:31:26"
                }
              ]
            },
            "functionSelector": "9dc29fac",
            "id": 14021,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "burn",
            "nameLocation": "969:4:26",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14013,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "1018:8:26"
            },
            "parameters": {
              "id": 14012,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14009,
                  "mutability": "mutable",
                  "name": "recipient",
                  "nameLocation": "982:9:26",
                  "nodeType": "VariableDeclaration",
                  "scope": 14021,
                  "src": "974:17:26",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 14008,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "974:7:26",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14011,
                  "mutability": "mutable",
                  "name": "amount",
                  "nameLocation": "1001:6:26",
                  "nodeType": "VariableDeclaration",
                  "scope": 14021,
                  "src": "993:14:26",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 14010,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "993:7:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "973:35:26"
            },
            "returnParameters": {
              "id": 14014,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1027:0:26"
            },
            "scope": 14022,
            "src": "960:170:26",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "scope": 14023,
        "src": "337:795:26",
        "usedErrors": []
      }
    ],
    "src": "38:1095:26"
  },
  "bytecode": "60a06040523480156200001157600080fd5b5060405162000fc138038062000fc1833981016040819052620000349162000300565b8351849084906200004d906003906020850190620001a3565b50805162000063906004906020840190620001a3565b5050600580546001600160a01b031916339081179091557fff0000000000000000000000000000000000000000000000000000000000000060f884901b16608052620000b1915083620000bb565b5050505062000407565b6001600160a01b038216620001165760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b80600260008282546200012a91906200038d565b90915550506001600160a01b03821660009081526020819052604081208054839290620001599084906200038d565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b828054620001b190620003b4565b90600052602060002090601f016020900481019282620001d5576000855562000220565b82601f10620001f057805160ff191683800117855562000220565b8280016001018555821562000220579182015b828111156200022057825182559160200191906001019062000203565b506200022e92915062000232565b5090565b5b808211156200022e576000815560010162000233565b600082601f8301126200025b57600080fd5b81516001600160401b0380821115620002785762000278620003f1565b604051601f8301601f19908116603f01168101908282118183101715620002a357620002a3620003f1565b81604052838152602092508683858801011115620002c057600080fd5b600091505b83821015620002e45785820183015181830184015290820190620002c5565b83821115620002f65760008385830101525b9695505050505050565b600080600080608085870312156200031757600080fd5b84516001600160401b03808211156200032f57600080fd5b6200033d8883890162000249565b955060208701519150808211156200035457600080fd5b50620003638782880162000249565b93505060408501519150606085015160ff811681146200038257600080fd5b939692955090935050565b60008219821115620003af57634e487b7160e01b600052601160045260246000fd5b500190565b600181811c90821680620003c957607f821691505b60208210811415620003eb57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b60805160f81c610b9b6200042660003960006101410152610b9b6000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c806340c10f191161008c5780639dc29fac116100665780639dc29fac146101c4578063a457c2d7146101d7578063a9059cbb146101ea578063dd62ed3e146101fd57600080fd5b806340c10f191461017e57806370a082311461019357806395d89b41146101bc57600080fd5b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461011557806323b872dd14610127578063313ce5671461013a578063395093511461016b575b600080fd5b6100dc610236565b6040516100e99190610a90565b60405180910390f35b610105610100366004610a66565b6102c8565b60405190151581526020016100e9565b6002545b6040519081526020016100e9565b610105610135366004610a2a565b6102e0565b60405160ff7f00000000000000000000000000000000000000000000000000000000000000001681526020016100e9565b610105610179366004610a66565b610304565b61019161018c366004610a66565b610343565b005b6101196101a13660046109d5565b6001600160a01b031660009081526020819052604090205490565b6100dc610351565b6101916101d2366004610a66565b610360565b6101056101e5366004610a66565b61036a565b6101056101f8366004610a66565b610401565b61011961020b3660046109f7565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b60606003805461024590610b14565b80601f016020809104026020016040519081016040528092919081815260200182805461027190610b14565b80156102be5780601f10610293576101008083540402835291602001916102be565b820191906000526020600020905b8154815290600101906020018083116102a157829003601f168201915b5050505050905090565b6000336102d681858561040f565b5060019392505050565b6000336102ee858285610534565b6102f98585856105c6565b506001949350505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091906102d6908290869061033e908790610ae5565b61040f565b61034d8282610794565b5050565b60606004805461024590610b14565b61034d8282610873565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156103f45760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6102f9828686840361040f565b6000336102d68185856105c6565b6001600160a01b0383166104715760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103eb565b6001600160a01b0382166104d25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103eb565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383811660009081526001602090815260408083209386168352929052205460001981146105c057818110156105b35760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016103eb565b6105c0848484840361040f565b50505050565b6001600160a01b03831661062a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103eb565b6001600160a01b03821661068c5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103eb565b6001600160a01b038316600090815260208190526040902054818110156107045760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016103eb565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061073b908490610ae5565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161078791815260200190565b60405180910390a36105c0565b6001600160a01b0382166107ea5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016103eb565b80600260008282546107fc9190610ae5565b90915550506001600160a01b03821660009081526020819052604081208054839290610829908490610ae5565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b0382166108d35760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016103eb565b6001600160a01b038216600090815260208190526040902054818110156109475760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016103eb565b6001600160a01b0383166000908152602081905260408120838303905560028054849290610976908490610afd565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610527565b80356001600160a01b03811681146109d057600080fd5b919050565b6000602082840312156109e757600080fd5b6109f0826109b9565b9392505050565b60008060408385031215610a0a57600080fd5b610a13836109b9565b9150610a21602084016109b9565b90509250929050565b600080600060608486031215610a3f57600080fd5b610a48846109b9565b9250610a56602085016109b9565b9150604084013590509250925092565b60008060408385031215610a7957600080fd5b610a82836109b9565b946020939093013593505050565b600060208083528351808285015260005b81811015610abd57858101830151858201604001528201610aa1565b81811115610acf576000604083870101525b50601f01601f1916929092016040019392505050565b60008219821115610af857610af8610b4f565b500190565b600082821015610b0f57610b0f610b4f565b500390565b600181811c90821680610b2857607f821691505b60208210811415610b4957634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fdfea26469706673582212200153899bc72157403a26bbb17b547bfd011afe57d0f0ae7d501c16281167ceee64736f6c63430008060033",
  "bytecodeSha1": "b43395966e7a571cb35338377d5d631c4afd82a1",
  "compiler": {
    "evm_version": "istanbul",
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "version": "0.8.6+commit.11564f7e"
  },
  "contractName": "TestCurrency",
  "coverageMap": {
    "branches": {
      "105": {},
      "21": {},
      "26": {},
      "96": {
        "ERC20._approve": {
          "41": [
            10254,
            10273,
            true
          ],
          "42": [
            10332,
            10353,
            true
          ]
        },
        "ERC20._burn": {
          "49": [
            9207,
            9228,
            true
          ],
          "50": [
            9398,
            9422,
            true
          ]
        },
        "ERC20._mint": {
          "48": [
            8498,
            8519,
            true
          ]
        },
        "ERC20._spendAllowance": {
          "43": [
            10966,
            11003,
            false
          ],
          "44": [
            11027,
            11053,
            true
          ]
        },
        "ERC20._transfer": {
          "45": [
            7614,
            7632,
            true
          ],
          "46": [
            7692,
            7708,
            true
          ],
          "47": [
            7863,
            7884,
            true
          ]
        },
        "ERC20.decreaseAllowance": {
          "40": [
            6815,
            6850,
            true
          ]
        }
      },
      "97": {},
      "98": {}
    },
    "statements": {
      "105": {
        "Context._msgSender": {
          "5": [
            712,
            729
          ]
        }
      },
      "21": {},
      "26": {
        "TestCurrency.burn": {
          "14": [
            1094,
            1125
          ]
        },
        "TestCurrency.decimals": {
          "1": [
            761,
            777
          ]
        },
        "TestCurrency.mint": {
          "12": [
            920,
            951
          ]
        }
      },
      "96": {
        "ERC20._approve": {
          "18": [
            10246,
            10314
          ],
          "19": [
            10324,
            10392
          ],
          "20": [
            10403,
            10439
          ],
          "21": [
            10449,
            10486
          ]
        },
        "ERC20._burn": {
          "35": [
            9199,
            9266
          ],
          "36": [
            9390,
            9461
          ],
          "37": [
            9495,
            9539
          ],
          "38": [
            9559,
            9581
          ],
          "39": [
            9592,
            9634
          ]
        },
        "ERC20._mint": {
          "31": [
            8490,
            8555
          ],
          "32": [
            8626,
            8648
          ],
          "33": [
            8658,
            8686
          ],
          "34": [
            8696,
            8738
          ]
        },
        "ERC20._spendAllowance": {
          "22": [
            11019,
            11087
          ],
          "23": [
            11129,
            11180
          ]
        },
        "ERC20._transfer": {
          "24": [
            7606,
            7674
          ],
          "25": [
            7684,
            7748
          ],
          "26": [
            7855,
            7927
          ],
          "27": [
            7961,
            7999
          ],
          "28": [
            8019,
            8042
          ],
          "29": [
            8053,
            8084
          ],
          "30": [
            8095,
            8132
          ]
        },
        "ERC20.allowance": {
          "3": [
            4084,
            4118
          ]
        },
        "ERC20.approve": {
          "6": [
            4570,
            4602
          ],
          "7": [
            4612,
            4623
          ]
        },
        "ERC20.balanceOf": {
          "2": [
            3501,
            3526
          ]
        },
        "ERC20.decreaseAllowance": {
          "15": [
            6807,
            6892
          ],
          "16": [
            6926,
            6986
          ]
        },
        "ERC20.increaseAllowance": {
          "11": [
            6015,
            6081
          ]
        },
        "ERC20.name": {
          "4": [
            2235,
            2247
          ]
        },
        "ERC20.symbol": {
          "13": [
            2448,
            2462
          ]
        },
        "ERC20.totalSupply": {
          "0": [
            3324,
            3343
          ]
        },
        "ERC20.transfer": {
          "17": [
            3862,
            3890
          ]
        },
        "ERC20.transferFrom": {
          "8": [
            5375,
            5413
          ],
          "9": [
            5423,
            5450
          ],
          "10": [
            5460,
            5471
          ]
        }
      },
      "97": {},
      "98": {}
    }
  },
  "dependencies": [
    "Context",
    "ERC20",
    "IERC20",
    "IERC20Metadata",
    "IMintableERC20"
  ],
  "deployedBytecode": "608060405234801561001057600080fd5b50600436106100cf5760003560e01c806340c10f191161008c5780639dc29fac116100665780639dc29fac146101c4578063a457c2d7146101d7578063a9059cbb146101ea578063dd62ed3e146101fd57600080fd5b806340c10f191461017e57806370a082311461019357806395d89b41146101bc57600080fd5b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461011557806323b872dd14610127578063313ce5671461013a578063395093511461016b575b600080fd5b6100dc610236565b6040516100e99190610a90565b60405180910390f35b610105610100366004610a66565b6102c8565b60405190151581526020016100e9565b6002545b6040519081526020016100e9565b610105610135366004610a2a565b6102e0565b60405160ff7f00000000000000000000000000000000000000000000000000000000000000001681526020016100e9565b610105610179366004610a66565b610304565b61019161018c366004610a66565b610343565b005b6101196101a13660046109d5565b6001600160a01b031660009081526020819052604090205490565b6100dc610351565b6101916101d2366004610a66565b610360565b6101056101e5366004610a66565b61036a565b6101056101f8366004610a66565b610401565b61011961020b3660046109f7565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b60606003805461024590610b14565b80601f016020809104026020016040519081016040528092919081815260200182805461027190610b14565b80156102be5780601f10610293576101008083540402835291602001916102be565b820191906000526020600020905b8154815290600101906020018083116102a157829003601f168201915b5050505050905090565b6000336102d681858561040f565b5060019392505050565b6000336102ee858285610534565b6102f98585856105c6565b506001949350505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091906102d6908290869061033e908790610ae5565b61040f565b61034d8282610794565b5050565b60606004805461024590610b14565b61034d8282610873565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156103f45760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6102f9828686840361040f565b6000336102d68185856105c6565b6001600160a01b0383166104715760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103eb565b6001600160a01b0382166104d25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103eb565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383811660009081526001602090815260408083209386168352929052205460001981146105c057818110156105b35760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016103eb565b6105c0848484840361040f565b50505050565b6001600160a01b03831661062a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103eb565b6001600160a01b03821661068c5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103eb565b6001600160a01b038316600090815260208190526040902054818110156107045760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016103eb565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061073b908490610ae5565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161078791815260200190565b60405180910390a36105c0565b6001600160a01b0382166107ea5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016103eb565b80600260008282546107fc9190610ae5565b90915550506001600160a01b03821660009081526020819052604081208054839290610829908490610ae5565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b0382166108d35760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016103eb565b6001600160a01b038216600090815260208190526040902054818110156109475760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016103eb565b6001600160a01b0383166000908152602081905260408120838303905560028054849290610976908490610afd565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610527565b80356001600160a01b03811681146109d057600080fd5b919050565b6000602082840312156109e757600080fd5b6109f0826109b9565b9392505050565b60008060408385031215610a0a57600080fd5b610a13836109b9565b9150610a21602084016109b9565b90509250929050565b600080600060608486031215610a3f57600080fd5b610a48846109b9565b9250610a56602085016109b9565b9150604084013590509250925092565b60008060408385031215610a7957600080fd5b610a82836109b9565b946020939093013593505050565b600060208083528351808285015260005b81811015610abd57858101830151858201604001528201610aa1565b81811115610acf576000604083870101525b50601f01601f1916929092016040019392505050565b60008219821115610af857610af8610b4f565b500190565b600082821015610b0f57610b0f610b4f565b500390565b600181811c90821680610b2857607f821691505b60208210811415610b4957634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fdfea26469706673582212200153899bc72157403a26bbb17b547bfd011afe57d0f0ae7d501c16281167ceee64736f6c63430008060033",
  "deployedSourceMap": "337:795:26:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2156:98:96;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4433:197;;;;;;:::i;:::-;;:::i;:::-;;;1405:14:114;;1398:22;1380:41;;1368:2;1353:18;4433:197:96;1335:92:114;3244:106:96;3331:12;;3244:106;;;6134:25:114;;;6122:2;6107:18;3244:106:96;6089:76:114;5192:286:96;;;;;;:::i;:::-;;:::i;690:92:26:-;;;6342:4:114;768:9:26;6330:17:114;6312:36;;6300:2;6285:18;690:92:26;6267:87:114;5873:236:96;;;;;;:::i;:::-;;:::i;786:170:26:-;;;;;;:::i;:::-;;:::i;:::-;;3408:125:96;;;;;;:::i;:::-;-1:-1:-1;;;;;3508:18:96;3482:7;3508:18;;;;;;;;;;;;3408:125;2367:102;;;:::i;960:170:26:-;;;;;;:::i;:::-;;:::i;6596:429:96:-;;;;;;:::i;:::-;;:::i;3729:189::-;;;;;;:::i;:::-;;:::i;3976:149::-;;;;;;:::i;:::-;-1:-1:-1;;;;;4091:18:96;;;4065:7;4091:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3976:149;2156:98;2210:13;2242:5;2235:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2156:98;:::o;4433:197::-;4516:4;719:10:105;4570:32:96;719:10:105;4586:7:96;4595:6;4570:8;:32::i;:::-;-1:-1:-1;4619:4:96;;4433:197;-1:-1:-1;;;4433:197:96:o;5192:286::-;5319:4;719:10:105;5375:38:96;5391:4;719:10:105;5406:6:96;5375:15;:38::i;:::-;5423:27;5433:4;5439:2;5443:6;5423:9;:27::i;:::-;-1:-1:-1;5467:4:96;;5192:286;-1:-1:-1;;;;5192:286:96:o;5873:236::-;719:10:105;5961:4:96;6040:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;6040:27:96;;;;;;;;;;5961:4;;719:10:105;6015:66:96;;719:10:105;;6040:27:96;;:40;;6070:10;;6040:40;:::i;:::-;6015:8;:66::i;786:170:26:-;927:24;933:9;944:6;927:5;:24::i;:::-;786:170;;:::o;2367:102:96:-;2423:13;2455:7;2448:14;;;;;:::i;960:170:26:-;1101:24;1107:9;1118:6;1101:5;:24::i;6596:429:96:-;719:10:105;6689:4:96;6770:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;6770:27:96;;;;;;;;;;6689:4;;719:10:105;6815:35:96;;;;6807:85;;;;-1:-1:-1;;;6807:85:96;;5424:2:114;6807:85:96;;;5406:21:114;5463:2;5443:18;;;5436:30;5502:34;5482:18;;;5475:62;-1:-1:-1;;;5553:18:114;;;5546:35;5598:19;;6807:85:96;;;;;;;;;6926:60;6935:5;6942:7;6970:15;6951:16;:34;6926:8;:60::i;3729:189::-;3808:4;719:10:105;3862:28:96;719:10:105;3879:2:96;3883:6;3862:9;:28::i;10123:370::-;-1:-1:-1;;;;;10254:19:96;;10246:68;;;;-1:-1:-1;;;10246:68:96;;5019:2:114;10246:68:96;;;5001:21:114;5058:2;5038:18;;;5031:30;5097:34;5077:18;;;5070:62;-1:-1:-1;;;5148:18:114;;;5141:34;5192:19;;10246:68:96;4991:226:114;10246:68:96;-1:-1:-1;;;;;10332:21:96;;10324:68;;;;-1:-1:-1;;;10324:68:96;;3043:2:114;10324:68:96;;;3025:21:114;3082:2;3062:18;;;3055:30;3121:34;3101:18;;;3094:62;-1:-1:-1;;;3172:18:114;;;3165:32;3214:19;;10324:68:96;3015:224:114;10324:68:96;-1:-1:-1;;;;;10403:18:96;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;10454:32;;6134:25:114;;;10454:32:96;;6107:18:114;10454:32:96;;;;;;;;10123:370;;;:::o;10770:441::-;-1:-1:-1;;;;;4091:18:96;;;10900:24;4091:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;-1:-1:-1;;10966:37:96;;10962:243;;11047:6;11027:16;:26;;11019:68;;;;-1:-1:-1;;;11019:68:96;;3446:2:114;11019:68:96;;;3428:21:114;3485:2;3465:18;;;3458:30;3524:31;3504:18;;;3497:59;3573:18;;11019:68:96;3418:179:114;11019:68:96;11129:51;11138:5;11145:7;11173:6;11154:16;:25;11129:8;:51::i;:::-;10890:321;10770:441;;;:::o;7488:651::-;-1:-1:-1;;;;;7614:18:96;;7606:68;;;;-1:-1:-1;;;7606:68:96;;4613:2:114;7606:68:96;;;4595:21:114;4652:2;4632:18;;;4625:30;4691:34;4671:18;;;4664:62;-1:-1:-1;;;4742:18:114;;;4735:35;4787:19;;7606:68:96;4585:227:114;7606:68:96;-1:-1:-1;;;;;7692:16:96;;7684:64;;;;-1:-1:-1;;;7684:64:96;;2236:2:114;7684:64:96;;;2218:21:114;2275:2;2255:18;;;2248:30;2314:34;2294:18;;;2287:62;-1:-1:-1;;;2365:18:114;;;2358:33;2408:19;;7684:64:96;2208:225:114;7684:64:96;-1:-1:-1;;;;;7830:15:96;;7808:19;7830:15;;;;;;;;;;;7863:21;;;;7855:72;;;;-1:-1:-1;;;7855:72:96;;3804:2:114;7855:72:96;;;3786:21:114;3843:2;3823:18;;;3816:30;3882:34;3862:18;;;3855:62;-1:-1:-1;;;3933:18:114;;;3926:36;3979:19;;7855:72:96;3776:228:114;7855:72:96;-1:-1:-1;;;;;7961:15:96;;;:9;:15;;;;;;;;;;;7979:20;;;7961:38;;8019:13;;;;;;;;:23;;7993:6;;7961:9;8019:23;;7993:6;;8019:23;:::i;:::-;;;;;;;;8073:2;-1:-1:-1;;;;;8058:26:96;8067:4;-1:-1:-1;;;;;8058:26:96;;8077:6;8058:26;;;;6134:25:114;;6122:2;6107:18;;6089:76;8058:26:96;;;;;;;;8095:37;9124:576;8415:389;-1:-1:-1;;;;;8498:21:96;;8490:65;;;;-1:-1:-1;;;8490:65:96;;5830:2:114;8490:65:96;;;5812:21:114;5869:2;5849:18;;;5842:30;5908:33;5888:18;;;5881:61;5959:18;;8490:65:96;5802:181:114;8490:65:96;8642:6;8626:12;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;8658:18:96;;:9;:18;;;;;;;;;;:28;;8680:6;;8658:9;:28;;8680:6;;8658:28;:::i;:::-;;;;-1:-1:-1;;8701:37:96;;6134:25:114;;;-1:-1:-1;;;;;8701:37:96;;;8718:1;;8701:37;;6122:2:114;6107:18;8701:37:96;;;;;;;786:170:26;;:::o;9124:576:96:-;-1:-1:-1;;;;;9207:21:96;;9199:67;;;;-1:-1:-1;;;9199:67:96;;4211:2:114;9199:67:96;;;4193:21:114;4250:2;4230:18;;;4223:30;4289:34;4269:18;;;4262:62;-1:-1:-1;;;4340:18:114;;;4333:31;4381:19;;9199:67:96;4183:223:114;9199:67:96;-1:-1:-1;;;;;9362:18:96;;9337:22;9362:18;;;;;;;;;;;9398:24;;;;9390:71;;;;-1:-1:-1;;;9390:71:96;;2640:2:114;9390:71:96;;;2622:21:114;2679:2;2659:18;;;2652:30;2718:34;2698:18;;;2691:62;-1:-1:-1;;;2769:18:114;;;2762:32;2811:19;;9390:71:96;2612:224:114;9390:71:96;-1:-1:-1;;;;;9495:18:96;;:9;:18;;;;;;;;;;9516:23;;;9495:44;;9559:12;:22;;9533:6;;9495:9;9559:22;;9533:6;;9559:22;:::i;:::-;;;;-1:-1:-1;;9597:37:96;;6134:25:114;;;9623:1:96;;-1:-1:-1;;;;;9597:37:96;;;;;6122:2:114;6107:18;9597:37:96;6089:76:114;14:173;82:20;;-1:-1:-1;;;;;131:31:114;;121:42;;111:2;;177:1;174;167:12;111:2;63:124;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:2;;;320:1;317;310:12;272:2;343:29;362:9;343:29;:::i;:::-;333:39;262:116;-1:-1:-1;;;262:116:114:o;383:260::-;451:6;459;512:2;500:9;491:7;487:23;483:32;480:2;;;528:1;525;518:12;480:2;551:29;570:9;551:29;:::i;:::-;541:39;;599:38;633:2;622:9;618:18;599:38;:::i;:::-;589:48;;470:173;;;;;:::o;648:328::-;725:6;733;741;794:2;782:9;773:7;769:23;765:32;762:2;;;810:1;807;800:12;762:2;833:29;852:9;833:29;:::i;:::-;823:39;;881:38;915:2;904:9;900:18;881:38;:::i;:::-;871:48;;966:2;955:9;951:18;938:32;928:42;;752:224;;;;;:::o;981:254::-;1049:6;1057;1110:2;1098:9;1089:7;1085:23;1081:32;1078:2;;;1126:1;1123;1116:12;1078:2;1149:29;1168:9;1149:29;:::i;:::-;1139:39;1225:2;1210:18;;;;1197:32;;-1:-1:-1;;;1068:167:114:o;1432:597::-;1544:4;1573:2;1602;1591:9;1584:21;1634:6;1628:13;1677:6;1672:2;1661:9;1657:18;1650:34;1702:1;1712:140;1726:6;1723:1;1720:13;1712:140;;;1821:14;;;1817:23;;1811:30;1787:17;;;1806:2;1783:26;1776:66;1741:10;;1712:140;;;1870:6;1867:1;1864:13;1861:2;;;1940:1;1935:2;1926:6;1915:9;1911:22;1907:31;1900:42;1861:2;-1:-1:-1;2013:2:114;1992:15;-1:-1:-1;;1988:29:114;1973:45;;;;2020:2;1969:54;;1553:476;-1:-1:-1;;;1553:476:114:o;6359:128::-;6399:3;6430:1;6426:6;6423:1;6420:13;6417:2;;;6436:18;;:::i;:::-;-1:-1:-1;6472:9:114;;6407:80::o;6492:125::-;6532:4;6560:1;6557;6554:8;6551:2;;;6565:18;;:::i;:::-;-1:-1:-1;6602:9:114;;6541:76::o;6622:380::-;6701:1;6697:12;;;;6744;;;6765:2;;6819:4;6811:6;6807:17;6797:27;;6765:2;6872;6864:6;6861:14;6841:18;6838:38;6835:2;;;6918:10;6913:3;6909:20;6906:1;6899:31;6953:4;6950:1;6943:15;6981:4;6978:1;6971:15;6835:2;;6677:325;;;:::o;7007:127::-;7068:10;7063:3;7059:20;7056:1;7049:31;7099:4;7096:1;7089:15;7123:4;7120:1;7113:15",
  "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": [
    337,
    1132
  ],
  "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xCF JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x40C10F19 GT PUSH2 0x8C JUMPI DUP1 PUSH4 0x9DC29FAC GT PUSH2 0x66 JUMPI DUP1 PUSH4 0x9DC29FAC EQ PUSH2 0x1C4 JUMPI DUP1 PUSH4 0xA457C2D7 EQ PUSH2 0x1D7 JUMPI DUP1 PUSH4 0xA9059CBB EQ PUSH2 0x1EA JUMPI DUP1 PUSH4 0xDD62ED3E EQ PUSH2 0x1FD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x40C10F19 EQ PUSH2 0x17E JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x193 JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x1BC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0xD4 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0xF2 JUMPI DUP1 PUSH4 0x18160DDD EQ PUSH2 0x115 JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x127 JUMPI DUP1 PUSH4 0x313CE567 EQ PUSH2 0x13A JUMPI DUP1 PUSH4 0x39509351 EQ PUSH2 0x16B JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xDC PUSH2 0x236 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE9 SWAP2 SWAP1 PUSH2 0xA90 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x105 PUSH2 0x100 CALLDATASIZE PUSH1 0x4 PUSH2 0xA66 JUMP JUMPDEST PUSH2 0x2C8 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0xE9 JUMP JUMPDEST PUSH1 0x2 SLOAD JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0xE9 JUMP JUMPDEST PUSH2 0x105 PUSH2 0x135 CALLDATASIZE PUSH1 0x4 PUSH2 0xA2A JUMP JUMPDEST PUSH2 0x2E0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0xFF PUSH32 0x0 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0xE9 JUMP JUMPDEST PUSH2 0x105 PUSH2 0x179 CALLDATASIZE PUSH1 0x4 PUSH2 0xA66 JUMP JUMPDEST PUSH2 0x304 JUMP JUMPDEST PUSH2 0x191 PUSH2 0x18C CALLDATASIZE PUSH1 0x4 PUSH2 0xA66 JUMP JUMPDEST PUSH2 0x343 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x119 PUSH2 0x1A1 CALLDATASIZE PUSH1 0x4 PUSH2 0x9D5 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 JUMP JUMPDEST PUSH2 0xDC PUSH2 0x351 JUMP JUMPDEST PUSH2 0x191 PUSH2 0x1D2 CALLDATASIZE PUSH1 0x4 PUSH2 0xA66 JUMP JUMPDEST PUSH2 0x360 JUMP JUMPDEST PUSH2 0x105 PUSH2 0x1E5 CALLDATASIZE PUSH1 0x4 PUSH2 0xA66 JUMP JUMPDEST PUSH2 0x36A JUMP JUMPDEST PUSH2 0x105 PUSH2 0x1F8 CALLDATASIZE PUSH1 0x4 PUSH2 0xA66 JUMP JUMPDEST PUSH2 0x401 JUMP JUMPDEST PUSH2 0x119 PUSH2 0x20B CALLDATASIZE PUSH1 0x4 PUSH2 0x9F7 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 0x60 PUSH1 0x3 DUP1 SLOAD PUSH2 0x245 SWAP1 PUSH2 0xB14 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 0x271 SWAP1 PUSH2 0xB14 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x2BE JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x293 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x2BE 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 0x2A1 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 0x2D6 DUP2 DUP6 DUP6 PUSH2 0x40F JUMP JUMPDEST POP PUSH1 0x1 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 CALLER PUSH2 0x2EE DUP6 DUP3 DUP6 PUSH2 0x534 JUMP JUMPDEST PUSH2 0x2F9 DUP6 DUP6 DUP6 PUSH2 0x5C6 JUMP JUMPDEST POP PUSH1 0x1 SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST CALLER PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x1 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP8 AND DUP5 MSTORE SWAP1 SWAP2 MSTORE DUP2 KECCAK256 SLOAD SWAP1 SWAP2 SWAP1 PUSH2 0x2D6 SWAP1 DUP3 SWAP1 DUP7 SWAP1 PUSH2 0x33E SWAP1 DUP8 SWAP1 PUSH2 0xAE5 JUMP JUMPDEST PUSH2 0x40F JUMP JUMPDEST PUSH2 0x34D DUP3 DUP3 PUSH2 0x794 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 DUP1 SLOAD PUSH2 0x245 SWAP1 PUSH2 0xB14 JUMP JUMPDEST PUSH2 0x34D DUP3 DUP3 PUSH2 0x873 JUMP JUMPDEST CALLER PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x1 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP8 AND DUP5 MSTORE SWAP1 SWAP2 MSTORE DUP2 KECCAK256 SLOAD SWAP1 SWAP2 SWAP1 DUP4 DUP2 LT ISZERO PUSH2 0x3F4 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 0x2F9 DUP3 DUP7 DUP7 DUP5 SUB PUSH2 0x40F JUMP JUMPDEST PUSH1 0x0 CALLER PUSH2 0x2D6 DUP2 DUP6 DUP6 PUSH2 0x5C6 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH2 0x471 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 0x3EB JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH2 0x4D2 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 0x3EB 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 JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x1 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 DUP7 AND DUP4 MSTORE SWAP3 SWAP1 MSTORE KECCAK256 SLOAD PUSH1 0x0 NOT DUP2 EQ PUSH2 0x5C0 JUMPI DUP2 DUP2 LT ISZERO PUSH2 0x5B3 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 0x3EB JUMP JUMPDEST PUSH2 0x5C0 DUP5 DUP5 DUP5 DUP5 SUB PUSH2 0x40F JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH2 0x62A 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 0x3EB JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH2 0x68C 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 0x3EB 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 0x704 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 0x3EB 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 0x73B SWAP1 DUP5 SWAP1 PUSH2 0xAE5 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 0x787 SWAP2 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 PUSH2 0x5C0 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH2 0x7EA JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1F PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x45524332303A206D696E7420746F20746865207A65726F206164647265737300 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x3EB JUMP JUMPDEST DUP1 PUSH1 0x2 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x7FC SWAP2 SWAP1 PUSH2 0xAE5 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 DUP1 SLOAD DUP4 SWAP3 SWAP1 PUSH2 0x829 SWAP1 DUP5 SWAP1 PUSH2 0xAE5 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x40 MLOAD DUP2 DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND SWAP1 PUSH1 0x0 SWAP1 PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF SWAP1 PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH2 0x8D3 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x21 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x45524332303A206275726E2066726F6D20746865207A65726F20616464726573 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x73 PUSH1 0xF8 SHL PUSH1 0x64 DUP3 ADD MSTORE PUSH1 0x84 ADD PUSH2 0x3EB JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD DUP2 DUP2 LT ISZERO PUSH2 0x947 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 0x45524332303A206275726E20616D6F756E7420657863656564732062616C616E PUSH1 0x44 DUP3 ADD MSTORE PUSH2 0x6365 PUSH1 0xF0 SHL PUSH1 0x64 DUP3 ADD MSTORE PUSH1 0x84 ADD PUSH2 0x3EB JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 DUP4 DUP4 SUB SWAP1 SSTORE PUSH1 0x2 DUP1 SLOAD DUP5 SWAP3 SWAP1 PUSH2 0x976 SWAP1 DUP5 SWAP1 PUSH2 0xAFD JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x40 MLOAD DUP3 DUP2 MSTORE PUSH1 0x0 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND SWAP1 PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF SWAP1 PUSH1 0x20 ADD PUSH2 0x527 JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x9D0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x9E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x9F0 DUP3 PUSH2 0x9B9 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xA0A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA13 DUP4 PUSH2 0x9B9 JUMP JUMPDEST SWAP2 POP PUSH2 0xA21 PUSH1 0x20 DUP5 ADD PUSH2 0x9B9 JUMP JUMPDEST SWAP1 POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0xA3F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA48 DUP5 PUSH2 0x9B9 JUMP JUMPDEST SWAP3 POP PUSH2 0xA56 PUSH1 0x20 DUP6 ADD PUSH2 0x9B9 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 0xA79 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA82 DUP4 PUSH2 0x9B9 JUMP JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 MSTORE DUP4 MLOAD DUP1 DUP3 DUP6 ADD MSTORE PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0xABD JUMPI DUP6 DUP2 ADD DUP4 ADD MLOAD DUP6 DUP3 ADD PUSH1 0x40 ADD MSTORE DUP3 ADD PUSH2 0xAA1 JUMP JUMPDEST DUP2 DUP2 GT ISZERO PUSH2 0xACF JUMPI PUSH1 0x0 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 0xAF8 JUMPI PUSH2 0xAF8 PUSH2 0xB4F JUMP JUMPDEST POP ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 LT ISZERO PUSH2 0xB0F JUMPI PUSH2 0xB0F PUSH2 0xB4F JUMP JUMPDEST POP SUB SWAP1 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0xB28 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0xB49 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 JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 ADD MSTORE8 DUP10 SWAP12 0xC7 0x21 JUMPI BLOCKHASH GASPRICE 0x26 0xBB 0xB1 PUSH28 0x547BFD011AFE57D0F0AE7D501C16281167CEEE64736F6C6343000806 STOP CALLER ",
  "pcMap": {
    "0": {
      "offset": [
        337,
        1132
      ],
      "op": "PUSH1",
      "path": "26",
      "value": "0x80"
    },
    "2": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH1",
      "path": "26",
      "value": "0x40"
    },
    "4": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "MSTORE",
      "path": "26"
    },
    "5": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "CALLVALUE",
      "path": "26"
    },
    "6": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "7": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "ISZERO",
      "path": "26"
    },
    "8": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x10"
    },
    "11": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "12": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH1",
      "path": "26",
      "value": "0x0"
    },
    "14": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "15": {
      "dev": "Cannot send ether to nonpayable function",
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "REVERT",
      "path": "26"
    },
    "16": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "17": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "POP",
      "path": "26"
    },
    "18": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH1",
      "path": "26",
      "value": "0x4"
    },
    "20": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "CALLDATASIZE",
      "path": "26"
    },
    "21": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "LT",
      "path": "26"
    },
    "22": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0xCF"
    },
    "25": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "26": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH1",
      "path": "26",
      "value": "0x0"
    },
    "28": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "CALLDATALOAD",
      "path": "26"
    },
    "29": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH1",
      "path": "26",
      "value": "0xE0"
    },
    "31": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "SHR",
      "path": "26"
    },
    "32": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "33": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0x40C10F19"
    },
    "38": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "GT",
      "path": "26"
    },
    "39": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x8C"
    },
    "42": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "43": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "44": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0x9DC29FAC"
    },
    "49": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "GT",
      "path": "26"
    },
    "50": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x66"
    },
    "53": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "54": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "55": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0x9DC29FAC"
    },
    "60": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "61": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x1C4"
    },
    "64": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "65": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "66": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0xA457C2D7"
    },
    "71": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "72": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x1D7"
    },
    "75": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "76": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "77": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0xA9059CBB"
    },
    "82": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "83": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x1EA"
    },
    "86": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "87": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "88": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0xDD62ED3E"
    },
    "93": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "94": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x1FD"
    },
    "97": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "98": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH1",
      "path": "26",
      "value": "0x0"
    },
    "100": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "101": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "REVERT",
      "path": "26"
    },
    "102": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "103": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "104": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0x40C10F19"
    },
    "109": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "110": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x17E"
    },
    "113": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "114": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "115": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0x70A08231"
    },
    "120": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "121": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x193"
    },
    "124": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "125": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "126": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0x95D89B41"
    },
    "131": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "132": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x1BC"
    },
    "135": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "136": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH1",
      "path": "26",
      "value": "0x0"
    },
    "138": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "139": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "REVERT",
      "path": "26"
    },
    "140": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "141": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "142": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0x6FDDE03"
    },
    "147": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "148": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0xD4"
    },
    "151": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "152": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "153": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0x95EA7B3"
    },
    "158": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "159": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0xF2"
    },
    "162": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "163": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "164": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0x18160DDD"
    },
    "169": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "170": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x115"
    },
    "173": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "174": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "175": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0x23B872DD"
    },
    "180": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "181": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x127"
    },
    "184": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "185": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "186": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0x313CE567"
    },
    "191": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "192": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x13A"
    },
    "195": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "196": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "197": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH4",
      "path": "26",
      "value": "0x39509351"
    },
    "202": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "EQ",
      "path": "26"
    },
    "203": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x16B"
    },
    "206": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPI",
      "path": "26"
    },
    "207": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "208": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "PUSH1",
      "path": "26",
      "value": "0x0"
    },
    "210": {
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "DUP1",
      "path": "26"
    },
    "211": {
      "first_revert": true,
      "fn": null,
      "offset": [
        337,
        1132
      ],
      "op": "REVERT",
      "path": "26"
    },
    "212": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "213": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xDC"
    },
    "216": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x236"
    },
    "219": {
      "fn": "ERC20.name",
      "jump": "i",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMP",
      "path": "96"
    },
    "220": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "221": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "223": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "224": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xE9"
    },
    "227": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "228": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "229": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xA90"
    },
    "232": {
      "fn": "ERC20.name",
      "jump": "i",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMP",
      "path": "96"
    },
    "233": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "234": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "236": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "237": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "DUP1",
      "path": "96"
    },
    "238": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "239": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "SUB",
      "path": "96"
    },
    "240": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "241": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "RETURN",
      "path": "96"
    },
    "242": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "243": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x105"
    },
    "246": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x100"
    },
    "249": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "CALLDATASIZE",
      "path": "96"
    },
    "250": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "252": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xA66"
    },
    "255": {
      "fn": "ERC20.approve",
      "jump": "i",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMP",
      "path": "96"
    },
    "256": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "257": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x2C8"
    },
    "260": {
      "fn": "ERC20.approve",
      "jump": "i",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMP",
      "path": "96"
    },
    "261": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "262": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "264": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "265": {
      "op": "SWAP1"
    },
    "266": {
      "op": "ISZERO"
    },
    "267": {
      "op": "ISZERO"
    },
    "268": {
      "op": "DUP2"
    },
    "269": {
      "op": "MSTORE"
    },
    "270": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "272": {
      "op": "ADD"
    },
    "273": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xE9"
    },
    "276": {
      "op": "JUMP"
    },
    "277": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3244,
        3350
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "278": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3331,
        3343
      ],
      "op": "PUSH1",
      "path": "96",
      "statement": 0,
      "value": "0x2"
    },
    "280": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3331,
        3343
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "281": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3244,
        3350
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "282": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3244,
        3350
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "284": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3244,
        3350
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "285": {
      "op": "SWAP1"
    },
    "286": {
      "op": "DUP2"
    },
    "287": {
      "op": "MSTORE"
    },
    "288": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "290": {
      "op": "ADD"
    },
    "291": {
      "fn": "ERC20.totalSupply",
      "offset": [
        3244,
        3350
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xE9"
    },
    "294": {
      "op": "JUMP"
    },
    "295": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "296": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x105"
    },
    "299": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x135"
    },
    "302": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "CALLDATASIZE",
      "path": "96"
    },
    "303": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "305": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xA2A"
    },
    "308": {
      "fn": "ERC20.transferFrom",
      "jump": "i",
      "offset": [
        5192,
        5478
      ],
      "op": "JUMP",
      "path": "96"
    },
    "309": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "310": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x2E0"
    },
    "313": {
      "fn": "ERC20.transferFrom",
      "jump": "i",
      "offset": [
        5192,
        5478
      ],
      "op": "JUMP",
      "path": "96"
    },
    "314": {
      "fn": "TestCurrency.decimals",
      "offset": [
        690,
        782
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "315": {
      "fn": "TestCurrency.decimals",
      "offset": [
        690,
        782
      ],
      "op": "PUSH1",
      "path": "26",
      "value": "0x40"
    },
    "317": {
      "fn": "TestCurrency.decimals",
      "offset": [
        690,
        782
      ],
      "op": "MLOAD",
      "path": "26"
    },
    "318": {
      "op": "PUSH1",
      "value": "0xFF"
    },
    "320": {
      "fn": "TestCurrency.decimals",
      "offset": [
        768,
        777
      ],
      "op": "PUSH32",
      "path": "26",
      "statement": 1,
      "value": "0x0"
    },
    "353": {
      "op": "AND"
    },
    "354": {
      "op": "DUP2"
    },
    "355": {
      "op": "MSTORE"
    },
    "356": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "358": {
      "op": "ADD"
    },
    "359": {
      "fn": "TestCurrency.decimals",
      "offset": [
        690,
        782
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0xE9"
    },
    "362": {
      "op": "JUMP"
    },
    "363": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6109
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "364": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6109
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x105"
    },
    "367": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6109
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x179"
    },
    "370": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6109
      ],
      "op": "CALLDATASIZE",
      "path": "96"
    },
    "371": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6109
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "373": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6109
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xA66"
    },
    "376": {
      "fn": "ERC20.increaseAllowance",
      "jump": "i",
      "offset": [
        5873,
        6109
      ],
      "op": "JUMP",
      "path": "96"
    },
    "377": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6109
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "378": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6109
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x304"
    },
    "381": {
      "fn": "ERC20.increaseAllowance",
      "jump": "i",
      "offset": [
        5873,
        6109
      ],
      "op": "JUMP",
      "path": "96"
    },
    "382": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "383": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x191"
    },
    "386": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x18C"
    },
    "389": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "CALLDATASIZE",
      "path": "26"
    },
    "390": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "PUSH1",
      "path": "26",
      "value": "0x4"
    },
    "392": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0xA66"
    },
    "395": {
      "fn": "TestCurrency.mint",
      "jump": "i",
      "offset": [
        786,
        956
      ],
      "op": "JUMP",
      "path": "26"
    },
    "396": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "397": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x343"
    },
    "400": {
      "fn": "TestCurrency.mint",
      "jump": "i",
      "offset": [
        786,
        956
      ],
      "op": "JUMP",
      "path": "26"
    },
    "401": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "402": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "STOP",
      "path": "26"
    },
    "403": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "404": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x119"
    },
    "407": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x1A1"
    },
    "410": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "CALLDATASIZE",
      "path": "96"
    },
    "411": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "413": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x9D5"
    },
    "416": {
      "fn": "ERC20.balanceOf",
      "jump": "i",
      "offset": [
        3408,
        3533
      ],
      "op": "JUMP",
      "path": "96"
    },
    "417": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "418": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "420": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "422": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "424": {
      "op": "SHL"
    },
    "425": {
      "op": "SUB"
    },
    "426": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "AND",
      "path": "96",
      "statement": 2
    },
    "427": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3482,
        3489
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "429": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "430": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "DUP2",
      "path": "96"
    },
    "431": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "432": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "434": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "DUP2",
      "path": "96"
    },
    "435": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "436": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "437": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "439": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "440": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "441": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "442": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3508,
        3526
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "443": {
      "fn": "ERC20.balanceOf",
      "offset": [
        3408,
        3533
      ],
      "op": "JUMP",
      "path": "96"
    },
    "444": {
      "fn": "ERC20.symbol",
      "offset": [
        2367,
        2469
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "445": {
      "fn": "ERC20.symbol",
      "offset": [
        2367,
        2469
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xDC"
    },
    "448": {
      "fn": "ERC20.symbol",
      "offset": [
        2367,
        2469
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x351"
    },
    "451": {
      "fn": "ERC20.symbol",
      "jump": "i",
      "offset": [
        2367,
        2469
      ],
      "op": "JUMP",
      "path": "96"
    },
    "452": {
      "fn": "TestCurrency.burn",
      "offset": [
        960,
        1130
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "453": {
      "fn": "TestCurrency.burn",
      "offset": [
        960,
        1130
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x191"
    },
    "456": {
      "fn": "TestCurrency.burn",
      "offset": [
        960,
        1130
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x1D2"
    },
    "459": {
      "fn": "TestCurrency.burn",
      "offset": [
        960,
        1130
      ],
      "op": "CALLDATASIZE",
      "path": "26"
    },
    "460": {
      "fn": "TestCurrency.burn",
      "offset": [
        960,
        1130
      ],
      "op": "PUSH1",
      "path": "26",
      "value": "0x4"
    },
    "462": {
      "fn": "TestCurrency.burn",
      "offset": [
        960,
        1130
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0xA66"
    },
    "465": {
      "fn": "TestCurrency.burn",
      "jump": "i",
      "offset": [
        960,
        1130
      ],
      "op": "JUMP",
      "path": "26"
    },
    "466": {
      "fn": "TestCurrency.burn",
      "offset": [
        960,
        1130
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "467": {
      "fn": "TestCurrency.burn",
      "offset": [
        960,
        1130
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x360"
    },
    "470": {
      "fn": "TestCurrency.burn",
      "jump": "i",
      "offset": [
        960,
        1130
      ],
      "op": "JUMP",
      "path": "26"
    },
    "471": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6596,
        7025
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "472": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6596,
        7025
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x105"
    },
    "475": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6596,
        7025
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x1E5"
    },
    "478": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6596,
        7025
      ],
      "op": "CALLDATASIZE",
      "path": "96"
    },
    "479": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6596,
        7025
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "481": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6596,
        7025
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xA66"
    },
    "484": {
      "fn": "ERC20.decreaseAllowance",
      "jump": "i",
      "offset": [
        6596,
        7025
      ],
      "op": "JUMP",
      "path": "96"
    },
    "485": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6596,
        7025
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "486": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6596,
        7025
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x36A"
    },
    "489": {
      "fn": "ERC20.decreaseAllowance",
      "jump": "i",
      "offset": [
        6596,
        7025
      ],
      "op": "JUMP",
      "path": "96"
    },
    "490": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "491": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x105"
    },
    "494": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x1F8"
    },
    "497": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "CALLDATASIZE",
      "path": "96"
    },
    "498": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "500": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xA66"
    },
    "503": {
      "fn": "ERC20.transfer",
      "jump": "i",
      "offset": [
        3729,
        3918
      ],
      "op": "JUMP",
      "path": "96"
    },
    "504": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "505": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x401"
    },
    "508": {
      "fn": "ERC20.transfer",
      "jump": "i",
      "offset": [
        3729,
        3918
      ],
      "op": "JUMP",
      "path": "96"
    },
    "509": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "510": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x119"
    },
    "513": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x20B"
    },
    "516": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "CALLDATASIZE",
      "path": "96"
    },
    "517": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "519": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x9F7"
    },
    "522": {
      "fn": "ERC20.allowance",
      "jump": "i",
      "offset": [
        3976,
        4125
      ],
      "op": "JUMP",
      "path": "96"
    },
    "523": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "524": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "526": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "528": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "530": {
      "op": "SHL"
    },
    "531": {
      "op": "SUB"
    },
    "532": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "SWAP2",
      "path": "96",
      "statement": 3
    },
    "533": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP3",
      "path": "96"
    },
    "534": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "AND",
      "path": "96"
    },
    "535": {
      "fn": "ERC20.allowance",
      "offset": [
        4065,
        4072
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "537": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "538": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP2",
      "path": "96"
    },
    "539": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "540": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4102
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x1"
    },
    "542": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "544": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "545": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP2",
      "path": "96"
    },
    "546": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "547": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "549": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP1",
      "path": "96"
    },
    "550": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP4",
      "path": "96"
    },
    "551": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "552": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP4",
      "path": "96"
    },
    "553": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "554": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP5",
      "path": "96"
    },
    "555": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "AND",
      "path": "96"
    },
    "556": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "DUP3",
      "path": "96"
    },
    "557": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "558": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "559": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "560": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "561": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "562": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "563": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "564": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "565": {
      "fn": "ERC20.allowance",
      "offset": [
        3976,
        4125
      ],
      "op": "JUMP",
      "path": "96"
    },
    "566": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "567": {
      "fn": "ERC20.name",
      "offset": [
        2210,
        2223
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x60"
    },
    "569": {
      "fn": "ERC20.name",
      "offset": [
        2242,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "statement": 4,
      "value": "0x3"
    },
    "571": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "96"
    },
    "572": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "573": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x245"
    },
    "576": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "577": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xB14"
    },
    "580": {
      "fn": "ERC20.name",
      "jump": "i",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMP",
      "path": "96"
    },
    "581": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "582": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "96"
    },
    "583": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x1F"
    },
    "585": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "96"
    },
    "586": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "588": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "96"
    },
    "589": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "590": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DIV",
      "path": "96"
    },
    "591": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MUL",
      "path": "96"
    },
    "592": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "594": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "96"
    },
    "595": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "597": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "598": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "599": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP2",
      "path": "96"
    },
    "600": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "96"
    },
    "601": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "603": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "604": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "96"
    },
    "605": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP3",
      "path": "96"
    },
    "606": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "607": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "608": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP2",
      "path": "96"
    },
    "609": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP2",
      "path": "96"
    },
    "610": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "611": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "613": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "96"
    },
    "614": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP3",
      "path": "96"
    },
    "615": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "96"
    },
    "616": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "617": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x271"
    },
    "620": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "621": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xB14"
    },
    "624": {
      "fn": "ERC20.name",
      "jump": "i",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMP",
      "path": "96"
    },
    "625": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "626": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "96"
    },
    "627": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ISZERO",
      "path": "96"
    },
    "628": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x2BE"
    },
    "631": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "632": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "96"
    },
    "633": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x1F"
    },
    "635": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "LT",
      "path": "96"
    },
    "636": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x293"
    },
    "639": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "640": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x100"
    },
    "643": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "96"
    },
    "644": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP4",
      "path": "96"
    },
    "645": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "646": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DIV",
      "path": "96"
    },
    "647": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MUL",
      "path": "96"
    },
    "648": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP4",
      "path": "96"
    },
    "649": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "650": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "651": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "653": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "96"
    },
    "654": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "655": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x2BE"
    },
    "658": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMP",
      "path": "96"
    },
    "659": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "660": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP3",
      "path": "96"
    },
    "661": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "96"
    },
    "662": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "663": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "664": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "666": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "667": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "669": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "671": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "672": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "673": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "674": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP2",
      "path": "96"
    },
    "675": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "676": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP2",
      "path": "96"
    },
    "677": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "678": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "679": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x1"
    },
    "681": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "96"
    },
    "682": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "683": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "685": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "96"
    },
    "686": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP1",
      "path": "96"
    },
    "687": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP4",
      "path": "96"
    },
    "688": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "GT",
      "path": "96"
    },
    "689": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x2A1"
    },
    "692": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "693": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP3",
      "path": "96"
    },
    "694": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "695": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SUB",
      "path": "96"
    },
    "696": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x1F"
    },
    "698": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "AND",
      "path": "96"
    },
    "699": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "DUP3",
      "path": "96"
    },
    "700": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "ADD",
      "path": "96"
    },
    "701": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "702": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "703": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "POP",
      "path": "96"
    },
    "704": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "POP",
      "path": "96"
    },
    "705": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "POP",
      "path": "96"
    },
    "706": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "POP",
      "path": "96"
    },
    "707": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "POP",
      "path": "96"
    },
    "708": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "709": {
      "fn": "ERC20.name",
      "offset": [
        2235,
        2247
      ],
      "op": "POP",
      "path": "96"
    },
    "710": {
      "fn": "ERC20.name",
      "offset": [
        2156,
        2254
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "711": {
      "fn": "ERC20.name",
      "jump": "o",
      "offset": [
        2156,
        2254
      ],
      "op": "JUMP",
      "path": "96"
    },
    "712": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "713": {
      "fn": "ERC20.approve",
      "offset": [
        4516,
        4520
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "715": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "CALLER",
      "path": "105",
      "statement": 5
    },
    "716": {
      "fn": "ERC20.approve",
      "offset": [
        4570,
        4602
      ],
      "op": "PUSH2",
      "path": "96",
      "statement": 6,
      "value": "0x2D6"
    },
    "719": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "DUP2",
      "path": "105"
    },
    "720": {
      "fn": "ERC20.approve",
      "offset": [
        4586,
        4593
      ],
      "op": "DUP6",
      "path": "96"
    },
    "721": {
      "fn": "ERC20.approve",
      "offset": [
        4595,
        4601
      ],
      "op": "DUP6",
      "path": "96"
    },
    "722": {
      "fn": "ERC20.approve",
      "offset": [
        4570,
        4578
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x40F"
    },
    "725": {
      "fn": "ERC20.approve",
      "jump": "i",
      "offset": [
        4570,
        4602
      ],
      "op": "JUMP",
      "path": "96"
    },
    "726": {
      "fn": "ERC20.approve",
      "offset": [
        4570,
        4602
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "727": {
      "op": "POP"
    },
    "728": {
      "fn": "ERC20.approve",
      "offset": [
        4619,
        4623
      ],
      "op": "PUSH1",
      "path": "96",
      "statement": 7,
      "value": "0x1"
    },
    "730": {
      "fn": "ERC20.approve",
      "offset": [
        4619,
        4623
      ],
      "op": "SWAP4",
      "path": "96"
    },
    "731": {
      "fn": "ERC20.approve",
      "offset": [
        4433,
        4630
      ],
      "op": "SWAP3",
      "path": "96"
    },
    "732": {
      "op": "POP"
    },
    "733": {
      "op": "POP"
    },
    "734": {
      "op": "POP"
    },
    "735": {
      "fn": "ERC20.approve",
      "jump": "o",
      "offset": [
        4433,
        4630
      ],
      "op": "JUMP",
      "path": "96"
    },
    "736": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "737": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5319,
        5323
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "739": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "CALLER",
      "path": "105"
    },
    "740": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5375,
        5413
      ],
      "op": "PUSH2",
      "path": "96",
      "statement": 8,
      "value": "0x2EE"
    },
    "743": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5391,
        5395
      ],
      "op": "DUP6",
      "path": "96"
    },
    "744": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "DUP3",
      "path": "105"
    },
    "745": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5406,
        5412
      ],
      "op": "DUP6",
      "path": "96"
    },
    "746": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5375,
        5390
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x534"
    },
    "749": {
      "fn": "ERC20.transferFrom",
      "jump": "i",
      "offset": [
        5375,
        5413
      ],
      "op": "JUMP",
      "path": "96"
    },
    "750": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5375,
        5413
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "751": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5423,
        5450
      ],
      "op": "PUSH2",
      "path": "96",
      "statement": 9,
      "value": "0x2F9"
    },
    "754": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5433,
        5437
      ],
      "op": "DUP6",
      "path": "96"
    },
    "755": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5439,
        5441
      ],
      "op": "DUP6",
      "path": "96"
    },
    "756": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5443,
        5449
      ],
      "op": "DUP6",
      "path": "96"
    },
    "757": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5423,
        5432
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x5C6"
    },
    "760": {
      "fn": "ERC20.transferFrom",
      "jump": "i",
      "offset": [
        5423,
        5450
      ],
      "op": "JUMP",
      "path": "96"
    },
    "761": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5423,
        5450
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "762": {
      "op": "POP"
    },
    "763": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5467,
        5471
      ],
      "op": "PUSH1",
      "path": "96",
      "statement": 10,
      "value": "0x1"
    },
    "765": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5467,
        5471
      ],
      "op": "SWAP5",
      "path": "96"
    },
    "766": {
      "fn": "ERC20.transferFrom",
      "offset": [
        5192,
        5478
      ],
      "op": "SWAP4",
      "path": "96"
    },
    "767": {
      "op": "POP"
    },
    "768": {
      "op": "POP"
    },
    "769": {
      "op": "POP"
    },
    "770": {
      "op": "POP"
    },
    "771": {
      "fn": "ERC20.transferFrom",
      "jump": "o",
      "offset": [
        5192,
        5478
      ],
      "op": "JUMP",
      "path": "96"
    },
    "772": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5873,
        6109
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "773": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "CALLER",
      "path": "105"
    },
    "774": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5961,
        5965
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "776": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6058
      ],
      "op": "DUP2",
      "path": "96",
      "statement": 11
    },
    "777": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6058
      ],
      "op": "DUP2",
      "path": "96"
    },
    "778": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6058
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "779": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6051
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x1"
    },
    "781": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6058
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "783": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6058
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "784": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6058
      ],
      "op": "DUP2",
      "path": "96"
    },
    "785": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6058
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "786": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6058
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "788": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6058
      ],
      "op": "DUP1",
      "path": "96"
    },
    "789": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6058
      ],
      "op": "DUP4",
      "path": "96"
    },
    "790": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6058
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "791": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "793": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "795": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "797": {
      "op": "SHL"
    },
    "798": {
      "op": "SUB"
    },
    "799": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6067
      ],
      "op": "DUP8",
      "path": "96"
    },
    "800": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6067
      ],
      "op": "AND",
      "path": "96"
    },
    "801": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6067
      ],
      "op": "DUP5",
      "path": "96"
    },
    "802": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6067
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "803": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6067
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "804": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6067
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "805": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6067
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "806": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6067
      ],
      "op": "DUP2",
      "path": "96"
    },
    "807": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6067
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "808": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6067
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "809": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5961,
        5965
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "810": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        5961,
        5965
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "811": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "SWAP1",
      "path": "105"
    },
    "812": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6015,
        6081
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x2D6"
    },
    "815": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6015,
        6081
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "816": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "DUP3",
      "path": "105"
    },
    "817": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "SWAP1",
      "path": "105"
    },
    "818": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6067
      ],
      "op": "DUP7",
      "path": "96"
    },
    "819": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6067
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "820": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6080
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x33E"
    },
    "823": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6080
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "824": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6070,
        6080
      ],
      "op": "DUP8",
      "path": "96"
    },
    "825": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6070,
        6080
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "826": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6080
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xAE5"
    },
    "829": {
      "fn": "ERC20.increaseAllowance",
      "jump": "i",
      "offset": [
        6040,
        6080
      ],
      "op": "JUMP",
      "path": "96"
    },
    "830": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6040,
        6080
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "831": {
      "fn": "ERC20.increaseAllowance",
      "offset": [
        6015,
        6023
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x40F"
    },
    "834": {
      "fn": "ERC20.increaseAllowance",
      "jump": "i",
      "offset": [
        6015,
        6081
      ],
      "op": "JUMP",
      "path": "96"
    },
    "835": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "836": {
      "fn": "TestCurrency.mint",
      "offset": [
        927,
        951
      ],
      "op": "PUSH2",
      "path": "26",
      "statement": 12,
      "value": "0x34D"
    },
    "839": {
      "fn": "TestCurrency.mint",
      "offset": [
        933,
        942
      ],
      "op": "DUP3",
      "path": "26"
    },
    "840": {
      "fn": "TestCurrency.mint",
      "offset": [
        944,
        950
      ],
      "op": "DUP3",
      "path": "26"
    },
    "841": {
      "fn": "TestCurrency.mint",
      "offset": [
        927,
        932
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x794"
    },
    "844": {
      "fn": "TestCurrency.mint",
      "jump": "i",
      "offset": [
        927,
        951
      ],
      "op": "JUMP",
      "path": "26"
    },
    "845": {
      "fn": "TestCurrency.mint",
      "offset": [
        927,
        951
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "846": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "POP",
      "path": "26"
    },
    "847": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "POP",
      "path": "26"
    },
    "848": {
      "fn": "TestCurrency.mint",
      "jump": "o",
      "offset": [
        786,
        956
      ],
      "op": "JUMP",
      "path": "26"
    },
    "849": {
      "fn": "ERC20.symbol",
      "offset": [
        2367,
        2469
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "850": {
      "fn": "ERC20.symbol",
      "offset": [
        2423,
        2436
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x60"
    },
    "852": {
      "fn": "ERC20.symbol",
      "offset": [
        2455,
        2462
      ],
      "op": "PUSH1",
      "path": "96",
      "statement": 13,
      "value": "0x4"
    },
    "854": {
      "fn": "ERC20.symbol",
      "offset": [
        2448,
        2462
      ],
      "op": "DUP1",
      "path": "96"
    },
    "855": {
      "fn": "ERC20.symbol",
      "offset": [
        2448,
        2462
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "856": {
      "fn": "ERC20.symbol",
      "offset": [
        2448,
        2462
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x245"
    },
    "859": {
      "fn": "ERC20.symbol",
      "offset": [
        2448,
        2462
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "860": {
      "fn": "ERC20.symbol",
      "offset": [
        2448,
        2462
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xB14"
    },
    "863": {
      "fn": "ERC20.symbol",
      "jump": "i",
      "offset": [
        2448,
        2462
      ],
      "op": "JUMP",
      "path": "96"
    },
    "864": {
      "fn": "TestCurrency.burn",
      "offset": [
        960,
        1130
      ],
      "op": "JUMPDEST",
      "path": "26"
    },
    "865": {
      "fn": "TestCurrency.burn",
      "offset": [
        1101,
        1125
      ],
      "op": "PUSH2",
      "path": "26",
      "statement": 14,
      "value": "0x34D"
    },
    "868": {
      "fn": "TestCurrency.burn",
      "offset": [
        1107,
        1116
      ],
      "op": "DUP3",
      "path": "26"
    },
    "869": {
      "fn": "TestCurrency.burn",
      "offset": [
        1118,
        1124
      ],
      "op": "DUP3",
      "path": "26"
    },
    "870": {
      "fn": "TestCurrency.burn",
      "offset": [
        1101,
        1106
      ],
      "op": "PUSH2",
      "path": "26",
      "value": "0x873"
    },
    "873": {
      "fn": "TestCurrency.burn",
      "jump": "i",
      "offset": [
        1101,
        1125
      ],
      "op": "JUMP",
      "path": "26"
    },
    "874": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6596,
        7025
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "875": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "CALLER",
      "path": "105"
    },
    "876": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6689,
        6693
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "878": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6788
      ],
      "op": "DUP2",
      "path": "96"
    },
    "879": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6788
      ],
      "op": "DUP2",
      "path": "96"
    },
    "880": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6788
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "881": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6781
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x1"
    },
    "883": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6788
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "885": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6788
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "886": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6788
      ],
      "op": "DUP2",
      "path": "96"
    },
    "887": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6788
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "888": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6788
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "890": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6788
      ],
      "op": "DUP1",
      "path": "96"
    },
    "891": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6788
      ],
      "op": "DUP4",
      "path": "96"
    },
    "892": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6788
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "893": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "895": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "897": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "899": {
      "op": "SHL"
    },
    "900": {
      "op": "SUB"
    },
    "901": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6797
      ],
      "op": "DUP8",
      "path": "96"
    },
    "902": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6797
      ],
      "op": "AND",
      "path": "96"
    },
    "903": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6797
      ],
      "op": "DUP5",
      "path": "96"
    },
    "904": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6797
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "905": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6797
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "906": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6797
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "907": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6797
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "908": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6797
      ],
      "op": "DUP2",
      "path": "96"
    },
    "909": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6797
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "910": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6770,
        6797
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "911": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6689,
        6693
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "912": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6689,
        6693
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "913": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "SWAP1",
      "path": "105"
    },
    "914": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6815,
        6850
      ],
      "op": "DUP4",
      "path": "96",
      "statement": 15
    },
    "915": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6815,
        6850
      ],
      "op": "DUP2",
      "path": "96"
    },
    "916": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6815,
        6850
      ],
      "op": "LT",
      "path": "96"
    },
    "917": {
      "branch": 40,
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6815,
        6850
      ],
      "op": "ISZERO",
      "path": "96"
    },
    "918": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x3F4"
    },
    "921": {
      "branch": 40,
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "922": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "924": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "925": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "929": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "931": {
      "op": "SHL"
    },
    "932": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "DUP2",
      "path": "96"
    },
    "933": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "934": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "936": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "938": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "DUP3",
      "path": "96"
    },
    "939": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "ADD",
      "path": "96"
    },
    "940": {
      "op": "MSTORE"
    },
    "941": {
      "op": "PUSH1",
      "value": "0x25"
    },
    "943": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "945": {
      "op": "DUP3"
    },
    "946": {
      "op": "ADD"
    },
    "947": {
      "op": "MSTORE"
    },
    "948": {
      "op": "PUSH32",
      "value": "0x45524332303A2064656372656173656420616C6C6F77616E63652062656C6F77"
    },
    "981": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "983": {
      "op": "DUP3"
    },
    "984": {
      "op": "ADD"
    },
    "985": {
      "op": "MSTORE"
    },
    "986": {
      "op": "PUSH5",
      "value": "0x207A65726F"
    },
    "992": {
      "op": "PUSH1",
      "value": "0xD8"
    },
    "994": {
      "op": "SHL"
    },
    "995": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "997": {
      "op": "DUP3"
    },
    "998": {
      "op": "ADD"
    },
    "999": {
      "op": "MSTORE"
    },
    "1000": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1002": {
      "op": "ADD"
    },
    "1003": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1004": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1006": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "1007": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "DUP1",
      "path": "96"
    },
    "1008": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "1009": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "SUB",
      "path": "96"
    },
    "1010": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1011": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "REVERT",
      "optimizer_revert": true,
      "path": "96"
    },
    "1012": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6807,
        6892
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1013": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6926,
        6986
      ],
      "op": "PUSH2",
      "path": "96",
      "statement": 16,
      "value": "0x2F9"
    },
    "1016": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6935,
        6940
      ],
      "op": "DUP3",
      "path": "96"
    },
    "1017": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6942,
        6949
      ],
      "op": "DUP7",
      "path": "96"
    },
    "1018": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6970,
        6985
      ],
      "op": "DUP7",
      "path": "96"
    },
    "1019": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6951,
        6967
      ],
      "op": "DUP5",
      "path": "96"
    },
    "1020": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6951,
        6985
      ],
      "op": "SUB",
      "path": "96"
    },
    "1021": {
      "fn": "ERC20.decreaseAllowance",
      "offset": [
        6926,
        6934
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x40F"
    },
    "1024": {
      "fn": "ERC20.decreaseAllowance",
      "jump": "i",
      "offset": [
        6926,
        6986
      ],
      "op": "JUMP",
      "path": "96"
    },
    "1025": {
      "fn": "ERC20.transfer",
      "offset": [
        3729,
        3918
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1026": {
      "fn": "ERC20.transfer",
      "offset": [
        3808,
        3812
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "1028": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "CALLER",
      "path": "105"
    },
    "1029": {
      "fn": "ERC20.transfer",
      "offset": [
        3862,
        3890
      ],
      "op": "PUSH2",
      "path": "96",
      "statement": 17,
      "value": "0x2D6"
    },
    "1032": {
      "fn": "Context._msgSender",
      "offset": [
        719,
        729
      ],
      "op": "DUP2",
      "path": "105"
    },
    "1033": {
      "fn": "ERC20.transfer",
      "offset": [
        3879,
        3881
      ],
      "op": "DUP6",
      "path": "96"
    },
    "1034": {
      "fn": "ERC20.transfer",
      "offset": [
        3883,
        3889
      ],
      "op": "DUP6",
      "path": "96"
    },
    "1035": {
      "fn": "ERC20.transfer",
      "offset": [
        3862,
        3871
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x5C6"
    },
    "1038": {
      "fn": "ERC20.transfer",
      "jump": "i",
      "offset": [
        3862,
        3890
      ],
      "op": "JUMP",
      "path": "96"
    },
    "1039": {
      "fn": "ERC20._approve",
      "offset": [
        10123,
        10493
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1040": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1042": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1044": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1046": {
      "op": "SHL"
    },
    "1047": {
      "op": "SUB"
    },
    "1048": {
      "fn": "ERC20._approve",
      "offset": [
        10254,
        10273
      ],
      "op": "DUP4",
      "path": "96",
      "statement": 18
    },
    "1049": {
      "branch": 41,
      "fn": "ERC20._approve",
      "offset": [
        10254,
        10273
      ],
      "op": "AND",
      "path": "96"
    },
    "1050": {
      "fn": "ERC20._approve",
      "offset": [
        10246,
        10314
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x471"
    },
    "1053": {
      "branch": 41,
      "fn": "ERC20._approve",
      "offset": [
        10246,
        10314
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "1054": {
      "fn": "ERC20._approve",
      "offset": [
        10246,
        10314
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1056": {
      "fn": "ERC20._approve",
      "offset": [
        10246,
        10314
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "1057": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1061": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1063": {
      "op": "SHL"
    },
    "1064": {
      "fn": "ERC20._approve",
      "offset": [
        10246,
        10314
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1065": {
      "fn": "ERC20._approve",
      "offset": [
        10246,
        10314
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1066": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1068": {
      "fn": "ERC20._approve",
      "offset": [
        10246,
        10314
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "1070": {
      "fn": "ERC20._approve",
      "offset": [
        10246,
        10314
      ],
      "op": "DUP3",
      "path": "96"
    },
    "1071": {
      "fn": "ERC20._approve",
      "offset": [
        10246,
        10314
      ],
      "op": "ADD",
      "path": "96"
    },
    "1072": {
      "op": "MSTORE"
    },
    "1073": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1075": {
      "op": "DUP1"
    },
    "1076": {
      "op": "DUP3"
    },
    "1077": {
      "op": "ADD"
    },
    "1078": {
      "op": "MSTORE"
    },
    "1079": {
      "op": "PUSH32",
      "value": "0x45524332303A20617070726F76652066726F6D20746865207A65726F20616464"
    },
    "1112": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1114": {
      "op": "DUP3"
    },
    "1115": {
      "op": "ADD"
    },
    "1116": {
      "op": "MSTORE"
    },
    "1117": {
      "op": "PUSH4",
      "value": "0x72657373"
    },
    "1122": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "1124": {
      "op": "SHL"
    },
    "1125": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1127": {
      "op": "DUP3"
    },
    "1128": {
      "op": "ADD"
    },
    "1129": {
      "op": "MSTORE"
    },
    "1130": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1132": {
      "op": "ADD"
    },
    "1133": {
      "fn": "ERC20._approve",
      "offset": [
        10246,
        10314
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x3EB"
    },
    "1136": {
      "op": "JUMP"
    },
    "1137": {
      "fn": "ERC20._approve",
      "offset": [
        10246,
        10314
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1138": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1140": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1142": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1144": {
      "op": "SHL"
    },
    "1145": {
      "op": "SUB"
    },
    "1146": {
      "fn": "ERC20._approve",
      "offset": [
        10332,
        10353
      ],
      "op": "DUP3",
      "path": "96",
      "statement": 19
    },
    "1147": {
      "branch": 42,
      "fn": "ERC20._approve",
      "offset": [
        10332,
        10353
      ],
      "op": "AND",
      "path": "96"
    },
    "1148": {
      "fn": "ERC20._approve",
      "offset": [
        10324,
        10392
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x4D2"
    },
    "1151": {
      "branch": 42,
      "fn": "ERC20._approve",
      "offset": [
        10324,
        10392
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "1152": {
      "fn": "ERC20._approve",
      "offset": [
        10324,
        10392
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1154": {
      "fn": "ERC20._approve",
      "offset": [
        10324,
        10392
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "1155": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1159": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1161": {
      "op": "SHL"
    },
    "1162": {
      "fn": "ERC20._approve",
      "offset": [
        10324,
        10392
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1163": {
      "fn": "ERC20._approve",
      "offset": [
        10324,
        10392
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1164": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1166": {
      "fn": "ERC20._approve",
      "offset": [
        10324,
        10392
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "1168": {
      "fn": "ERC20._approve",
      "offset": [
        10324,
        10392
      ],
      "op": "DUP3",
      "path": "96"
    },
    "1169": {
      "fn": "ERC20._approve",
      "offset": [
        10324,
        10392
      ],
      "op": "ADD",
      "path": "96"
    },
    "1170": {
      "op": "MSTORE"
    },
    "1171": {
      "op": "PUSH1",
      "value": "0x22"
    },
    "1173": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1175": {
      "op": "DUP3"
    },
    "1176": {
      "op": "ADD"
    },
    "1177": {
      "op": "MSTORE"
    },
    "1178": {
      "op": "PUSH32",
      "value": "0x45524332303A20617070726F766520746F20746865207A65726F206164647265"
    },
    "1211": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1213": {
      "op": "DUP3"
    },
    "1214": {
      "op": "ADD"
    },
    "1215": {
      "op": "MSTORE"
    },
    "1216": {
      "op": "PUSH2",
      "value": "0x7373"
    },
    "1219": {
      "op": "PUSH1",
      "value": "0xF0"
    },
    "1221": {
      "op": "SHL"
    },
    "1222": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1224": {
      "op": "DUP3"
    },
    "1225": {
      "op": "ADD"
    },
    "1226": {
      "op": "MSTORE"
    },
    "1227": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1229": {
      "op": "ADD"
    },
    "1230": {
      "fn": "ERC20._approve",
      "offset": [
        10324,
        10392
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x3EB"
    },
    "1233": {
      "op": "JUMP"
    },
    "1234": {
      "fn": "ERC20._approve",
      "offset": [
        10324,
        10392
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1235": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1237": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1239": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1241": {
      "op": "SHL"
    },
    "1242": {
      "op": "SUB"
    },
    "1243": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "DUP4",
      "path": "96",
      "statement": 20
    },
    "1244": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1245": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "AND",
      "path": "96"
    },
    "1246": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "1248": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1249": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1250": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1251": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10414
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x1"
    },
    "1253": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "1255": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1256": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1257": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1258": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1260": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "DUP1",
      "path": "96"
    },
    "1261": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "DUP4",
      "path": "96"
    },
    "1262": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10421
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "1263": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "SWAP5",
      "path": "96"
    },
    "1264": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "DUP8",
      "path": "96"
    },
    "1265": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "AND",
      "path": "96"
    },
    "1266": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "DUP1",
      "path": "96"
    },
    "1267": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "DUP5",
      "path": "96"
    },
    "1268": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1269": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "SWAP5",
      "path": "96"
    },
    "1270": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "DUP3",
      "path": "96"
    },
    "1271": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1272": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "1273": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "DUP3",
      "path": "96"
    },
    "1274": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1275": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10430
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "1276": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10439
      ],
      "op": "DUP6",
      "path": "96"
    },
    "1277": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10439
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1278": {
      "fn": "ERC20._approve",
      "offset": [
        10403,
        10439
      ],
      "op": "SSTORE",
      "path": "96"
    },
    "1279": {
      "fn": "ERC20._approve",
      "offset": [
        10454,
        10486
      ],
      "op": "SWAP1",
      "path": "96",
      "statement": 21
    },
    "1280": {
      "fn": "ERC20._approve",
      "offset": [
        10454,
        10486
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "1281": {
      "op": "DUP5"
    },
    "1282": {
      "op": "DUP2"
    },
    "1283": {
      "op": "MSTORE"
    },
    "1284": {
      "fn": "ERC20._approve",
      "offset": [
        10454,
        10486
      ],
      "op": "PUSH32",
      "path": "96",
      "value": "0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925"
    },
    "1317": {
      "fn": "ERC20._approve",
      "offset": [
        10454,
        10486
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "1318": {
      "op": "ADD"
    },
    "1319": {
      "fn": "ERC20._approve",
      "offset": [
        10454,
        10486
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1320": {
      "fn": "ERC20._approve",
      "offset": [
        10454,
        10486
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1322": {
      "fn": "ERC20._approve",
      "offset": [
        10454,
        10486
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "1323": {
      "fn": "ERC20._approve",
      "offset": [
        10454,
        10486
      ],
      "op": "DUP1",
      "path": "96"
    },
    "1324": {
      "fn": "ERC20._approve",
      "offset": [
        10454,
        10486
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "1325": {
      "fn": "ERC20._approve",
      "offset": [
        10454,
        10486
      ],
      "op": "SUB",
      "path": "96"
    },
    "1326": {
      "fn": "ERC20._approve",
      "offset": [
        10454,
        10486
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1327": {
      "fn": "ERC20._approve",
      "offset": [
        10454,
        10486
      ],
      "op": "LOG3",
      "path": "96"
    },
    "1328": {
      "fn": "ERC20._approve",
      "offset": [
        10123,
        10493
      ],
      "op": "POP",
      "path": "96"
    },
    "1329": {
      "fn": "ERC20._approve",
      "offset": [
        10123,
        10493
      ],
      "op": "POP",
      "path": "96"
    },
    "1330": {
      "fn": "ERC20._approve",
      "offset": [
        10123,
        10493
      ],
      "op": "POP",
      "path": "96"
    },
    "1331": {
      "fn": "ERC20._approve",
      "jump": "o",
      "offset": [
        10123,
        10493
      ],
      "op": "JUMP",
      "path": "96"
    },
    "1332": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10770,
        11211
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1333": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1335": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1337": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1339": {
      "op": "SHL"
    },
    "1340": {
      "op": "SUB"
    },
    "1341": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP4",
      "path": "96"
    },
    "1342": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1343": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "AND",
      "path": "96"
    },
    "1344": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10900,
        10924
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "1346": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1347": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1348": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1349": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4102
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x1"
    },
    "1351": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "1353": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1354": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1355": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1356": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1358": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP1",
      "path": "96"
    },
    "1359": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "DUP4",
      "path": "96"
    },
    "1360": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4109
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "1361": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP4",
      "path": "96"
    },
    "1362": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "DUP7",
      "path": "96"
    },
    "1363": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "AND",
      "path": "96"
    },
    "1364": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "DUP4",
      "path": "96"
    },
    "1365": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1366": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP3",
      "path": "96"
    },
    "1367": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1368": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1369": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "1370": {
      "fn": "ERC20.allowance",
      "offset": [
        4091,
        4118
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "1371": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "1373": {
      "op": "NOT"
    },
    "1374": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10966,
        11003
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1375": {
      "branch": 43,
      "fn": "ERC20._spendAllowance",
      "offset": [
        10966,
        11003
      ],
      "op": "EQ",
      "path": "96"
    },
    "1376": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10962,
        11205
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x5C0"
    },
    "1379": {
      "branch": 43,
      "fn": "ERC20._spendAllowance",
      "offset": [
        10962,
        11205
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "1380": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11047,
        11053
      ],
      "op": "DUP2",
      "path": "96",
      "statement": 22
    },
    "1381": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11027,
        11043
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1382": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11027,
        11053
      ],
      "op": "LT",
      "path": "96"
    },
    "1383": {
      "branch": 44,
      "fn": "ERC20._spendAllowance",
      "offset": [
        11027,
        11053
      ],
      "op": "ISZERO",
      "path": "96"
    },
    "1384": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11019,
        11087
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x5B3"
    },
    "1387": {
      "branch": 44,
      "fn": "ERC20._spendAllowance",
      "offset": [
        11019,
        11087
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "1388": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11019,
        11087
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1390": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11019,
        11087
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "1391": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1395": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1397": {
      "op": "SHL"
    },
    "1398": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11019,
        11087
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1399": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11019,
        11087
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1400": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1402": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11019,
        11087
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "1404": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11019,
        11087
      ],
      "op": "DUP3",
      "path": "96"
    },
    "1405": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11019,
        11087
      ],
      "op": "ADD",
      "path": "96"
    },
    "1406": {
      "op": "MSTORE"
    },
    "1407": {
      "op": "PUSH1",
      "value": "0x1D"
    },
    "1409": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1411": {
      "op": "DUP3"
    },
    "1412": {
      "op": "ADD"
    },
    "1413": {
      "op": "MSTORE"
    },
    "1414": {
      "op": "PUSH32",
      "value": "0x45524332303A20696E73756666696369656E7420616C6C6F77616E6365000000"
    },
    "1447": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1449": {
      "op": "DUP3"
    },
    "1450": {
      "op": "ADD"
    },
    "1451": {
      "op": "MSTORE"
    },
    "1452": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1454": {
      "op": "ADD"
    },
    "1455": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11019,
        11087
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x3EB"
    },
    "1458": {
      "op": "JUMP"
    },
    "1459": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11019,
        11087
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1460": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11129,
        11180
      ],
      "op": "PUSH2",
      "path": "96",
      "statement": 23,
      "value": "0x5C0"
    },
    "1463": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11138,
        11143
      ],
      "op": "DUP5",
      "path": "96"
    },
    "1464": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11145,
        11152
      ],
      "op": "DUP5",
      "path": "96"
    },
    "1465": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11173,
        11179
      ],
      "op": "DUP5",
      "path": "96"
    },
    "1466": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11154,
        11170
      ],
      "op": "DUP5",
      "path": "96"
    },
    "1467": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11154,
        11179
      ],
      "op": "SUB",
      "path": "96"
    },
    "1468": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11129,
        11137
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x40F"
    },
    "1471": {
      "fn": "ERC20._spendAllowance",
      "jump": "i",
      "offset": [
        11129,
        11180
      ],
      "op": "JUMP",
      "path": "96"
    },
    "1472": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        11129,
        11180
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1473": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10890,
        11211
      ],
      "op": "POP",
      "path": "96"
    },
    "1474": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10770,
        11211
      ],
      "op": "POP",
      "path": "96"
    },
    "1475": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10770,
        11211
      ],
      "op": "POP",
      "path": "96"
    },
    "1476": {
      "fn": "ERC20._spendAllowance",
      "offset": [
        10770,
        11211
      ],
      "op": "POP",
      "path": "96"
    },
    "1477": {
      "fn": "ERC20._spendAllowance",
      "jump": "o",
      "offset": [
        10770,
        11211
      ],
      "op": "JUMP",
      "path": "96"
    },
    "1478": {
      "fn": "ERC20._transfer",
      "offset": [
        7488,
        8139
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1479": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1481": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1483": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1485": {
      "op": "SHL"
    },
    "1486": {
      "op": "SUB"
    },
    "1487": {
      "fn": "ERC20._transfer",
      "offset": [
        7614,
        7632
      ],
      "op": "DUP4",
      "path": "96",
      "statement": 24
    },
    "1488": {
      "branch": 45,
      "fn": "ERC20._transfer",
      "offset": [
        7614,
        7632
      ],
      "op": "AND",
      "path": "96"
    },
    "1489": {
      "fn": "ERC20._transfer",
      "offset": [
        7606,
        7674
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x62A"
    },
    "1492": {
      "branch": 45,
      "fn": "ERC20._transfer",
      "offset": [
        7606,
        7674
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "1493": {
      "fn": "ERC20._transfer",
      "offset": [
        7606,
        7674
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1495": {
      "fn": "ERC20._transfer",
      "offset": [
        7606,
        7674
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "1496": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1500": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1502": {
      "op": "SHL"
    },
    "1503": {
      "fn": "ERC20._transfer",
      "offset": [
        7606,
        7674
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1504": {
      "fn": "ERC20._transfer",
      "offset": [
        7606,
        7674
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1505": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1507": {
      "fn": "ERC20._transfer",
      "offset": [
        7606,
        7674
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "1509": {
      "fn": "ERC20._transfer",
      "offset": [
        7606,
        7674
      ],
      "op": "DUP3",
      "path": "96"
    },
    "1510": {
      "fn": "ERC20._transfer",
      "offset": [
        7606,
        7674
      ],
      "op": "ADD",
      "path": "96"
    },
    "1511": {
      "op": "MSTORE"
    },
    "1512": {
      "op": "PUSH1",
      "value": "0x25"
    },
    "1514": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1516": {
      "op": "DUP3"
    },
    "1517": {
      "op": "ADD"
    },
    "1518": {
      "op": "MSTORE"
    },
    "1519": {
      "op": "PUSH32",
      "value": "0x45524332303A207472616E736665722066726F6D20746865207A65726F206164"
    },
    "1552": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1554": {
      "op": "DUP3"
    },
    "1555": {
      "op": "ADD"
    },
    "1556": {
      "op": "MSTORE"
    },
    "1557": {
      "op": "PUSH5",
      "value": "0x6472657373"
    },
    "1563": {
      "op": "PUSH1",
      "value": "0xD8"
    },
    "1565": {
      "op": "SHL"
    },
    "1566": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1568": {
      "op": "DUP3"
    },
    "1569": {
      "op": "ADD"
    },
    "1570": {
      "op": "MSTORE"
    },
    "1571": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1573": {
      "op": "ADD"
    },
    "1574": {
      "fn": "ERC20._transfer",
      "offset": [
        7606,
        7674
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x3EB"
    },
    "1577": {
      "op": "JUMP"
    },
    "1578": {
      "fn": "ERC20._transfer",
      "offset": [
        7606,
        7674
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1579": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1581": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1583": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1585": {
      "op": "SHL"
    },
    "1586": {
      "op": "SUB"
    },
    "1587": {
      "fn": "ERC20._transfer",
      "offset": [
        7692,
        7708
      ],
      "op": "DUP3",
      "path": "96",
      "statement": 25
    },
    "1588": {
      "branch": 46,
      "fn": "ERC20._transfer",
      "offset": [
        7692,
        7708
      ],
      "op": "AND",
      "path": "96"
    },
    "1589": {
      "fn": "ERC20._transfer",
      "offset": [
        7684,
        7748
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x68C"
    },
    "1592": {
      "branch": 46,
      "fn": "ERC20._transfer",
      "offset": [
        7684,
        7748
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "1593": {
      "fn": "ERC20._transfer",
      "offset": [
        7684,
        7748
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1595": {
      "fn": "ERC20._transfer",
      "offset": [
        7684,
        7748
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "1596": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1600": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1602": {
      "op": "SHL"
    },
    "1603": {
      "fn": "ERC20._transfer",
      "offset": [
        7684,
        7748
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1604": {
      "fn": "ERC20._transfer",
      "offset": [
        7684,
        7748
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1605": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1607": {
      "fn": "ERC20._transfer",
      "offset": [
        7684,
        7748
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "1609": {
      "fn": "ERC20._transfer",
      "offset": [
        7684,
        7748
      ],
      "op": "DUP3",
      "path": "96"
    },
    "1610": {
      "fn": "ERC20._transfer",
      "offset": [
        7684,
        7748
      ],
      "op": "ADD",
      "path": "96"
    },
    "1611": {
      "op": "MSTORE"
    },
    "1612": {
      "op": "PUSH1",
      "value": "0x23"
    },
    "1614": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1616": {
      "op": "DUP3"
    },
    "1617": {
      "op": "ADD"
    },
    "1618": {
      "op": "MSTORE"
    },
    "1619": {
      "op": "PUSH32",
      "value": "0x45524332303A207472616E7366657220746F20746865207A65726F2061646472"
    },
    "1652": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1654": {
      "op": "DUP3"
    },
    "1655": {
      "op": "ADD"
    },
    "1656": {
      "op": "MSTORE"
    },
    "1657": {
      "op": "PUSH3",
      "value": "0x657373"
    },
    "1661": {
      "op": "PUSH1",
      "value": "0xE8"
    },
    "1663": {
      "op": "SHL"
    },
    "1664": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1666": {
      "op": "DUP3"
    },
    "1667": {
      "op": "ADD"
    },
    "1668": {
      "op": "MSTORE"
    },
    "1669": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1671": {
      "op": "ADD"
    },
    "1672": {
      "fn": "ERC20._transfer",
      "offset": [
        7684,
        7748
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x3EB"
    },
    "1675": {
      "op": "JUMP"
    },
    "1676": {
      "fn": "ERC20._transfer",
      "offset": [
        7684,
        7748
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1677": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1679": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1681": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1683": {
      "op": "SHL"
    },
    "1684": {
      "op": "SUB"
    },
    "1685": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "DUP4",
      "path": "96"
    },
    "1686": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "AND",
      "path": "96"
    },
    "1687": {
      "fn": "ERC20._transfer",
      "offset": [
        7808,
        7827
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "1689": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1690": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1691": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1692": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "1694": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1695": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1696": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1697": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1699": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1700": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "1701": {
      "fn": "ERC20._transfer",
      "offset": [
        7830,
        7845
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "1702": {
      "fn": "ERC20._transfer",
      "offset": [
        7863,
        7884
      ],
      "op": "DUP2",
      "path": "96",
      "statement": 26
    },
    "1703": {
      "fn": "ERC20._transfer",
      "offset": [
        7863,
        7884
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1704": {
      "fn": "ERC20._transfer",
      "offset": [
        7863,
        7884
      ],
      "op": "LT",
      "path": "96"
    },
    "1705": {
      "branch": 47,
      "fn": "ERC20._transfer",
      "offset": [
        7863,
        7884
      ],
      "op": "ISZERO",
      "path": "96"
    },
    "1706": {
      "fn": "ERC20._transfer",
      "offset": [
        7855,
        7927
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x704"
    },
    "1709": {
      "branch": 47,
      "fn": "ERC20._transfer",
      "offset": [
        7855,
        7927
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "1710": {
      "fn": "ERC20._transfer",
      "offset": [
        7855,
        7927
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1712": {
      "fn": "ERC20._transfer",
      "offset": [
        7855,
        7927
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "1713": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1717": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1719": {
      "op": "SHL"
    },
    "1720": {
      "fn": "ERC20._transfer",
      "offset": [
        7855,
        7927
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1721": {
      "fn": "ERC20._transfer",
      "offset": [
        7855,
        7927
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1722": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1724": {
      "fn": "ERC20._transfer",
      "offset": [
        7855,
        7927
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "1726": {
      "fn": "ERC20._transfer",
      "offset": [
        7855,
        7927
      ],
      "op": "DUP3",
      "path": "96"
    },
    "1727": {
      "fn": "ERC20._transfer",
      "offset": [
        7855,
        7927
      ],
      "op": "ADD",
      "path": "96"
    },
    "1728": {
      "op": "MSTORE"
    },
    "1729": {
      "op": "PUSH1",
      "value": "0x26"
    },
    "1731": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1733": {
      "op": "DUP3"
    },
    "1734": {
      "op": "ADD"
    },
    "1735": {
      "op": "MSTORE"
    },
    "1736": {
      "op": "PUSH32",
      "value": "0x45524332303A207472616E7366657220616D6F756E7420657863656564732062"
    },
    "1769": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "1771": {
      "op": "DUP3"
    },
    "1772": {
      "op": "ADD"
    },
    "1773": {
      "op": "MSTORE"
    },
    "1774": {
      "op": "PUSH6",
      "value": "0x616C616E6365"
    },
    "1781": {
      "op": "PUSH1",
      "value": "0xD0"
    },
    "1783": {
      "op": "SHL"
    },
    "1784": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "1786": {
      "op": "DUP3"
    },
    "1787": {
      "op": "ADD"
    },
    "1788": {
      "op": "MSTORE"
    },
    "1789": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "1791": {
      "op": "ADD"
    },
    "1792": {
      "fn": "ERC20._transfer",
      "offset": [
        7855,
        7927
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x3EB"
    },
    "1795": {
      "op": "JUMP"
    },
    "1796": {
      "fn": "ERC20._transfer",
      "offset": [
        7855,
        7927
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1797": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1799": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1801": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1803": {
      "op": "SHL"
    },
    "1804": {
      "op": "SUB"
    },
    "1805": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "DUP1",
      "path": "96",
      "statement": 27
    },
    "1806": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "DUP6",
      "path": "96"
    },
    "1807": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "AND",
      "path": "96"
    },
    "1808": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7970
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "1810": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1811": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1812": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1813": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "1815": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1816": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1817": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1818": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1820": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "DUP1",
      "path": "96"
    },
    "1821": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "DUP3",
      "path": "96"
    },
    "1822": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7976
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "1823": {
      "fn": "ERC20._transfer",
      "offset": [
        7979,
        7999
      ],
      "op": "DUP6",
      "path": "96"
    },
    "1824": {
      "fn": "ERC20._transfer",
      "offset": [
        7979,
        7999
      ],
      "op": "DUP6",
      "path": "96"
    },
    "1825": {
      "fn": "ERC20._transfer",
      "offset": [
        7979,
        7999
      ],
      "op": "SUB",
      "path": "96"
    },
    "1826": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7999
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1827": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7999
      ],
      "op": "SSTORE",
      "path": "96"
    },
    "1828": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8032
      ],
      "op": "SWAP2",
      "path": "96",
      "statement": 28
    },
    "1829": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8032
      ],
      "op": "DUP6",
      "path": "96"
    },
    "1830": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8032
      ],
      "op": "AND",
      "path": "96"
    },
    "1831": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8032
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1832": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8032
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1833": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8032
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1834": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8032
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1835": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8032
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "1836": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "DUP1",
      "path": "96"
    },
    "1837": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "1838": {
      "fn": "ERC20._transfer",
      "offset": [
        7993,
        7999
      ],
      "op": "DUP5",
      "path": "96"
    },
    "1839": {
      "fn": "ERC20._transfer",
      "offset": [
        7993,
        7999
      ],
      "op": "SWAP3",
      "path": "96"
    },
    "1840": {
      "fn": "ERC20._transfer",
      "offset": [
        7961,
        7970
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1841": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x73B"
    },
    "1844": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1845": {
      "fn": "ERC20._transfer",
      "offset": [
        7993,
        7999
      ],
      "op": "DUP5",
      "path": "96"
    },
    "1846": {
      "fn": "ERC20._transfer",
      "offset": [
        7993,
        7999
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1847": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xAE5"
    },
    "1850": {
      "fn": "ERC20._transfer",
      "jump": "i",
      "offset": [
        8019,
        8042
      ],
      "op": "JUMP",
      "path": "96"
    },
    "1851": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1852": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "SWAP3",
      "path": "96"
    },
    "1853": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "POP",
      "path": "96"
    },
    "1854": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "POP",
      "path": "96"
    },
    "1855": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1856": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1857": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "SSTORE",
      "path": "96"
    },
    "1858": {
      "fn": "ERC20._transfer",
      "offset": [
        8019,
        8042
      ],
      "op": "POP",
      "path": "96"
    },
    "1859": {
      "fn": "ERC20._transfer",
      "offset": [
        8073,
        8075
      ],
      "op": "DUP3",
      "path": "96",
      "statement": 29
    },
    "1860": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1862": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1864": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1866": {
      "op": "SHL"
    },
    "1867": {
      "op": "SUB"
    },
    "1868": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "AND",
      "path": "96"
    },
    "1869": {
      "fn": "ERC20._transfer",
      "offset": [
        8067,
        8071
      ],
      "op": "DUP5",
      "path": "96"
    },
    "1870": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1872": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1874": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1876": {
      "op": "SHL"
    },
    "1877": {
      "op": "SUB"
    },
    "1878": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "AND",
      "path": "96"
    },
    "1879": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "PUSH32",
      "path": "96",
      "value": "0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF"
    },
    "1912": {
      "fn": "ERC20._transfer",
      "offset": [
        8077,
        8083
      ],
      "op": "DUP5",
      "path": "96"
    },
    "1913": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1915": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "1916": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x787"
    },
    "1919": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "1920": {
      "op": "DUP2"
    },
    "1921": {
      "op": "MSTORE"
    },
    "1922": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1924": {
      "op": "ADD"
    },
    "1925": {
      "op": "SWAP1"
    },
    "1926": {
      "op": "JUMP"
    },
    "1927": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1928": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1930": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "1931": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "DUP1",
      "path": "96"
    },
    "1932": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "1933": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "SUB",
      "path": "96"
    },
    "1934": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "1935": {
      "fn": "ERC20._transfer",
      "offset": [
        8058,
        8084
      ],
      "op": "LOG3",
      "path": "96"
    },
    "1936": {
      "fn": "ERC20._transfer",
      "offset": [
        8095,
        8132
      ],
      "op": "PUSH2",
      "path": "96",
      "statement": 30,
      "value": "0x5C0"
    },
    "1939": {
      "fn": "ERC20._burn",
      "offset": [
        9124,
        9700
      ],
      "op": "JUMP",
      "path": "96"
    },
    "1940": {
      "fn": "ERC20._mint",
      "offset": [
        8415,
        8804
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "1941": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1943": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "1945": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "1947": {
      "op": "SHL"
    },
    "1948": {
      "op": "SUB"
    },
    "1949": {
      "fn": "ERC20._mint",
      "offset": [
        8498,
        8519
      ],
      "op": "DUP3",
      "path": "96",
      "statement": 31
    },
    "1950": {
      "branch": 48,
      "fn": "ERC20._mint",
      "offset": [
        8498,
        8519
      ],
      "op": "AND",
      "path": "96"
    },
    "1951": {
      "fn": "ERC20._mint",
      "offset": [
        8490,
        8555
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x7EA"
    },
    "1954": {
      "branch": 48,
      "fn": "ERC20._mint",
      "offset": [
        8490,
        8555
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "1955": {
      "fn": "ERC20._mint",
      "offset": [
        8490,
        8555
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "1957": {
      "fn": "ERC20._mint",
      "offset": [
        8490,
        8555
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "1958": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "1962": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "1964": {
      "op": "SHL"
    },
    "1965": {
      "fn": "ERC20._mint",
      "offset": [
        8490,
        8555
      ],
      "op": "DUP2",
      "path": "96"
    },
    "1966": {
      "fn": "ERC20._mint",
      "offset": [
        8490,
        8555
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "1967": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "1969": {
      "fn": "ERC20._mint",
      "offset": [
        8490,
        8555
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "1971": {
      "fn": "ERC20._mint",
      "offset": [
        8490,
        8555
      ],
      "op": "DUP3",
      "path": "96"
    },
    "1972": {
      "fn": "ERC20._mint",
      "offset": [
        8490,
        8555
      ],
      "op": "ADD",
      "path": "96"
    },
    "1973": {
      "op": "MSTORE"
    },
    "1974": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "1976": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "1978": {
      "op": "DUP3"
    },
    "1979": {
      "op": "ADD"
    },
    "1980": {
      "op": "MSTORE"
    },
    "1981": {
      "op": "PUSH32",
      "value": "0x45524332303A206D696E7420746F20746865207A65726F206164647265737300"
    },
    "2014": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "2016": {
      "op": "DUP3"
    },
    "2017": {
      "op": "ADD"
    },
    "2018": {
      "op": "MSTORE"
    },
    "2019": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "2021": {
      "op": "ADD"
    },
    "2022": {
      "fn": "ERC20._mint",
      "offset": [
        8490,
        8555
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x3EB"
    },
    "2025": {
      "op": "JUMP"
    },
    "2026": {
      "fn": "ERC20._mint",
      "offset": [
        8490,
        8555
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "2027": {
      "fn": "ERC20._mint",
      "offset": [
        8642,
        8648
      ],
      "op": "DUP1",
      "path": "96",
      "statement": 32
    },
    "2028": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8638
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x2"
    },
    "2030": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8638
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "2032": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8648
      ],
      "op": "DUP3",
      "path": "96"
    },
    "2033": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8648
      ],
      "op": "DUP3",
      "path": "96"
    },
    "2034": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8648
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "2035": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8648
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x7FC"
    },
    "2038": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8648
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "2039": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8648
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2040": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8648
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xAE5"
    },
    "2043": {
      "fn": "ERC20._mint",
      "jump": "i",
      "offset": [
        8626,
        8648
      ],
      "op": "JUMP",
      "path": "96"
    },
    "2044": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8648
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "2045": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8648
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2046": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8648
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "2047": {
      "fn": "ERC20._mint",
      "offset": [
        8626,
        8648
      ],
      "op": "SSTORE",
      "path": "96"
    },
    "2048": {
      "op": "POP"
    },
    "2049": {
      "op": "POP"
    },
    "2050": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2052": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2054": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2056": {
      "op": "SHL"
    },
    "2057": {
      "op": "SUB"
    },
    "2058": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8676
      ],
      "op": "DUP3",
      "path": "96",
      "statement": 33
    },
    "2059": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8676
      ],
      "op": "AND",
      "path": "96"
    },
    "2060": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8667
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "2062": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8676
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2063": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8676
      ],
      "op": "DUP2",
      "path": "96"
    },
    "2064": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8676
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "2065": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8676
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "2067": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8676
      ],
      "op": "DUP2",
      "path": "96"
    },
    "2068": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8676
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2069": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8676
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "2070": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8676
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "2072": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8676
      ],
      "op": "DUP2",
      "path": "96"
    },
    "2073": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8676
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "2074": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8686
      ],
      "op": "DUP1",
      "path": "96"
    },
    "2075": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8686
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "2076": {
      "fn": "ERC20._mint",
      "offset": [
        8680,
        8686
      ],
      "op": "DUP4",
      "path": "96"
    },
    "2077": {
      "fn": "ERC20._mint",
      "offset": [
        8680,
        8686
      ],
      "op": "SWAP3",
      "path": "96"
    },
    "2078": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8667
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2079": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8686
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x829"
    },
    "2082": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8686
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2083": {
      "fn": "ERC20._mint",
      "offset": [
        8680,
        8686
      ],
      "op": "DUP5",
      "path": "96"
    },
    "2084": {
      "fn": "ERC20._mint",
      "offset": [
        8680,
        8686
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2085": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8686
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xAE5"
    },
    "2088": {
      "fn": "ERC20._mint",
      "jump": "i",
      "offset": [
        8658,
        8686
      ],
      "op": "JUMP",
      "path": "96"
    },
    "2089": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8686
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "2090": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8686
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2091": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8686
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "2092": {
      "fn": "ERC20._mint",
      "offset": [
        8658,
        8686
      ],
      "op": "SSTORE",
      "path": "96"
    },
    "2093": {
      "op": "POP"
    },
    "2094": {
      "op": "POP"
    },
    "2095": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "PUSH1",
      "path": "96",
      "statement": 34,
      "value": "0x40"
    },
    "2097": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "2098": {
      "op": "DUP2"
    },
    "2099": {
      "op": "DUP2"
    },
    "2100": {
      "op": "MSTORE"
    },
    "2101": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2103": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2105": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2107": {
      "op": "SHL"
    },
    "2108": {
      "op": "SUB"
    },
    "2109": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "DUP4",
      "path": "96"
    },
    "2110": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "AND",
      "path": "96"
    },
    "2111": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2112": {
      "fn": "ERC20._mint",
      "offset": [
        8718,
        8719
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "2114": {
      "fn": "ERC20._mint",
      "offset": [
        8718,
        8719
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2115": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "PUSH32",
      "path": "96",
      "value": "0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF"
    },
    "2148": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2149": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2151": {
      "op": "ADD"
    },
    "2152": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "2154": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "2155": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "DUP1",
      "path": "96"
    },
    "2156": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "2157": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "SUB",
      "path": "96"
    },
    "2158": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2159": {
      "fn": "ERC20._mint",
      "offset": [
        8701,
        8738
      ],
      "op": "LOG3",
      "path": "96"
    },
    "2160": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "POP",
      "path": "26"
    },
    "2161": {
      "fn": "TestCurrency.mint",
      "offset": [
        786,
        956
      ],
      "op": "POP",
      "path": "26"
    },
    "2162": {
      "fn": "TestCurrency.mint",
      "jump": "o",
      "offset": [
        786,
        956
      ],
      "op": "JUMP",
      "path": "26"
    },
    "2163": {
      "fn": "ERC20._burn",
      "offset": [
        9124,
        9700
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "2164": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2166": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2168": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2170": {
      "op": "SHL"
    },
    "2171": {
      "op": "SUB"
    },
    "2172": {
      "fn": "ERC20._burn",
      "offset": [
        9207,
        9228
      ],
      "op": "DUP3",
      "path": "96",
      "statement": 35
    },
    "2173": {
      "branch": 49,
      "fn": "ERC20._burn",
      "offset": [
        9207,
        9228
      ],
      "op": "AND",
      "path": "96"
    },
    "2174": {
      "fn": "ERC20._burn",
      "offset": [
        9199,
        9266
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x8D3"
    },
    "2177": {
      "branch": 49,
      "fn": "ERC20._burn",
      "offset": [
        9199,
        9266
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "2178": {
      "fn": "ERC20._burn",
      "offset": [
        9199,
        9266
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "2180": {
      "fn": "ERC20._burn",
      "offset": [
        9199,
        9266
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "2181": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "2185": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "2187": {
      "op": "SHL"
    },
    "2188": {
      "fn": "ERC20._burn",
      "offset": [
        9199,
        9266
      ],
      "op": "DUP2",
      "path": "96"
    },
    "2189": {
      "fn": "ERC20._burn",
      "offset": [
        9199,
        9266
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "2190": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2192": {
      "fn": "ERC20._burn",
      "offset": [
        9199,
        9266
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "2194": {
      "fn": "ERC20._burn",
      "offset": [
        9199,
        9266
      ],
      "op": "DUP3",
      "path": "96"
    },
    "2195": {
      "fn": "ERC20._burn",
      "offset": [
        9199,
        9266
      ],
      "op": "ADD",
      "path": "96"
    },
    "2196": {
      "op": "MSTORE"
    },
    "2197": {
      "op": "PUSH1",
      "value": "0x21"
    },
    "2199": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "2201": {
      "op": "DUP3"
    },
    "2202": {
      "op": "ADD"
    },
    "2203": {
      "op": "MSTORE"
    },
    "2204": {
      "op": "PUSH32",
      "value": "0x45524332303A206275726E2066726F6D20746865207A65726F20616464726573"
    },
    "2237": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "2239": {
      "op": "DUP3"
    },
    "2240": {
      "op": "ADD"
    },
    "2241": {
      "op": "MSTORE"
    },
    "2242": {
      "op": "PUSH1",
      "value": "0x73"
    },
    "2244": {
      "op": "PUSH1",
      "value": "0xF8"
    },
    "2246": {
      "op": "SHL"
    },
    "2247": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "2249": {
      "op": "DUP3"
    },
    "2250": {
      "op": "ADD"
    },
    "2251": {
      "op": "MSTORE"
    },
    "2252": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "2254": {
      "op": "ADD"
    },
    "2255": {
      "fn": "ERC20._burn",
      "offset": [
        9199,
        9266
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x3EB"
    },
    "2258": {
      "op": "JUMP"
    },
    "2259": {
      "fn": "ERC20._burn",
      "offset": [
        9199,
        9266
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "2260": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2262": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2264": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2266": {
      "op": "SHL"
    },
    "2267": {
      "op": "SUB"
    },
    "2268": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "DUP3",
      "path": "96"
    },
    "2269": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "AND",
      "path": "96"
    },
    "2270": {
      "fn": "ERC20._burn",
      "offset": [
        9337,
        9359
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "2272": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2273": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "DUP2",
      "path": "96"
    },
    "2274": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "2275": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "2277": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "DUP2",
      "path": "96"
    },
    "2278": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2279": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "2280": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "2282": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2283": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "2284": {
      "fn": "ERC20._burn",
      "offset": [
        9362,
        9380
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "2285": {
      "fn": "ERC20._burn",
      "offset": [
        9398,
        9422
      ],
      "op": "DUP2",
      "path": "96",
      "statement": 36
    },
    "2286": {
      "fn": "ERC20._burn",
      "offset": [
        9398,
        9422
      ],
      "op": "DUP2",
      "path": "96"
    },
    "2287": {
      "fn": "ERC20._burn",
      "offset": [
        9398,
        9422
      ],
      "op": "LT",
      "path": "96"
    },
    "2288": {
      "branch": 50,
      "fn": "ERC20._burn",
      "offset": [
        9398,
        9422
      ],
      "op": "ISZERO",
      "path": "96"
    },
    "2289": {
      "fn": "ERC20._burn",
      "offset": [
        9390,
        9461
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x947"
    },
    "2292": {
      "branch": 50,
      "fn": "ERC20._burn",
      "offset": [
        9390,
        9461
      ],
      "op": "JUMPI",
      "path": "96"
    },
    "2293": {
      "fn": "ERC20._burn",
      "offset": [
        9390,
        9461
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "2295": {
      "fn": "ERC20._burn",
      "offset": [
        9390,
        9461
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "2296": {
      "op": "PUSH3",
      "value": "0x461BCD"
    },
    "2300": {
      "op": "PUSH1",
      "value": "0xE5"
    },
    "2302": {
      "op": "SHL"
    },
    "2303": {
      "fn": "ERC20._burn",
      "offset": [
        9390,
        9461
      ],
      "op": "DUP2",
      "path": "96"
    },
    "2304": {
      "fn": "ERC20._burn",
      "offset": [
        9390,
        9461
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "2305": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2307": {
      "fn": "ERC20._burn",
      "offset": [
        9390,
        9461
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x4"
    },
    "2309": {
      "fn": "ERC20._burn",
      "offset": [
        9390,
        9461
      ],
      "op": "DUP3",
      "path": "96"
    },
    "2310": {
      "fn": "ERC20._burn",
      "offset": [
        9390,
        9461
      ],
      "op": "ADD",
      "path": "96"
    },
    "2311": {
      "op": "MSTORE"
    },
    "2312": {
      "op": "PUSH1",
      "value": "0x22"
    },
    "2314": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "2316": {
      "op": "DUP3"
    },
    "2317": {
      "op": "ADD"
    },
    "2318": {
      "op": "MSTORE"
    },
    "2319": {
      "op": "PUSH32",
      "value": "0x45524332303A206275726E20616D6F756E7420657863656564732062616C616E"
    },
    "2352": {
      "op": "PUSH1",
      "value": "0x44"
    },
    "2354": {
      "op": "DUP3"
    },
    "2355": {
      "op": "ADD"
    },
    "2356": {
      "op": "MSTORE"
    },
    "2357": {
      "op": "PUSH2",
      "value": "0x6365"
    },
    "2360": {
      "op": "PUSH1",
      "value": "0xF0"
    },
    "2362": {
      "op": "SHL"
    },
    "2363": {
      "op": "PUSH1",
      "value": "0x64"
    },
    "2365": {
      "op": "DUP3"
    },
    "2366": {
      "op": "ADD"
    },
    "2367": {
      "op": "MSTORE"
    },
    "2368": {
      "op": "PUSH1",
      "value": "0x84"
    },
    "2370": {
      "op": "ADD"
    },
    "2371": {
      "fn": "ERC20._burn",
      "offset": [
        9390,
        9461
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x3EB"
    },
    "2374": {
      "op": "JUMP"
    },
    "2375": {
      "fn": "ERC20._burn",
      "offset": [
        9390,
        9461
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "2376": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2378": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2380": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2382": {
      "op": "SHL"
    },
    "2383": {
      "op": "SUB"
    },
    "2384": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9513
      ],
      "op": "DUP4",
      "path": "96",
      "statement": 37
    },
    "2385": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9513
      ],
      "op": "AND",
      "path": "96"
    },
    "2386": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9504
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "2388": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9513
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2389": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9513
      ],
      "op": "DUP2",
      "path": "96"
    },
    "2390": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9513
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "2391": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9513
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x20"
    },
    "2393": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9513
      ],
      "op": "DUP2",
      "path": "96"
    },
    "2394": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9513
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2395": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9513
      ],
      "op": "MSTORE",
      "path": "96"
    },
    "2396": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9513
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x40"
    },
    "2398": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9513
      ],
      "op": "DUP2",
      "path": "96"
    },
    "2399": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9513
      ],
      "op": "KECCAK256",
      "path": "96"
    },
    "2400": {
      "fn": "ERC20._burn",
      "offset": [
        9516,
        9539
      ],
      "op": "DUP4",
      "path": "96"
    },
    "2401": {
      "fn": "ERC20._burn",
      "offset": [
        9516,
        9539
      ],
      "op": "DUP4",
      "path": "96"
    },
    "2402": {
      "fn": "ERC20._burn",
      "offset": [
        9516,
        9539
      ],
      "op": "SUB",
      "path": "96"
    },
    "2403": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9539
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2404": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9539
      ],
      "op": "SSTORE",
      "path": "96"
    },
    "2405": {
      "fn": "ERC20._burn",
      "offset": [
        9559,
        9571
      ],
      "op": "PUSH1",
      "path": "96",
      "statement": 38,
      "value": "0x2"
    },
    "2407": {
      "fn": "ERC20._burn",
      "offset": [
        9559,
        9581
      ],
      "op": "DUP1",
      "path": "96"
    },
    "2408": {
      "fn": "ERC20._burn",
      "offset": [
        9559,
        9581
      ],
      "op": "SLOAD",
      "path": "96"
    },
    "2409": {
      "fn": "ERC20._burn",
      "offset": [
        9533,
        9539
      ],
      "op": "DUP5",
      "path": "96"
    },
    "2410": {
      "fn": "ERC20._burn",
      "offset": [
        9533,
        9539
      ],
      "op": "SWAP3",
      "path": "96"
    },
    "2411": {
      "fn": "ERC20._burn",
      "offset": [
        9495,
        9504
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2412": {
      "fn": "ERC20._burn",
      "offset": [
        9559,
        9581
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x976"
    },
    "2415": {
      "fn": "ERC20._burn",
      "offset": [
        9559,
        9581
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2416": {
      "fn": "ERC20._burn",
      "offset": [
        9533,
        9539
      ],
      "op": "DUP5",
      "path": "96"
    },
    "2417": {
      "fn": "ERC20._burn",
      "offset": [
        9533,
        9539
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2418": {
      "fn": "ERC20._burn",
      "offset": [
        9559,
        9581
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0xAFD"
    },
    "2421": {
      "fn": "ERC20._burn",
      "jump": "i",
      "offset": [
        9559,
        9581
      ],
      "op": "JUMP",
      "path": "96"
    },
    "2422": {
      "fn": "ERC20._burn",
      "offset": [
        9559,
        9581
      ],
      "op": "JUMPDEST",
      "path": "96"
    },
    "2423": {
      "fn": "ERC20._burn",
      "offset": [
        9559,
        9581
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2424": {
      "fn": "ERC20._burn",
      "offset": [
        9559,
        9581
      ],
      "op": "SWAP2",
      "path": "96"
    },
    "2425": {
      "fn": "ERC20._burn",
      "offset": [
        9559,
        9581
      ],
      "op": "SSTORE",
      "path": "96"
    },
    "2426": {
      "op": "POP"
    },
    "2427": {
      "op": "POP"
    },
    "2428": {
      "fn": "ERC20._burn",
      "offset": [
        9597,
        9634
      ],
      "op": "PUSH1",
      "path": "96",
      "statement": 39,
      "value": "0x40"
    },
    "2430": {
      "fn": "ERC20._burn",
      "offset": [
        9597,
        9634
      ],
      "op": "MLOAD",
      "path": "96"
    },
    "2431": {
      "op": "DUP3"
    },
    "2432": {
      "op": "DUP2"
    },
    "2433": {
      "op": "MSTORE"
    },
    "2434": {
      "fn": "ERC20._burn",
      "offset": [
        9623,
        9624
      ],
      "op": "PUSH1",
      "path": "96",
      "value": "0x0"
    },
    "2436": {
      "fn": "ERC20._burn",
      "offset": [
        9623,
        9624
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2437": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2439": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2441": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2443": {
      "op": "SHL"
    },
    "2444": {
      "op": "SUB"
    },
    "2445": {
      "fn": "ERC20._burn",
      "offset": [
        9597,
        9634
      ],
      "op": "DUP6",
      "path": "96"
    },
    "2446": {
      "fn": "ERC20._burn",
      "offset": [
        9597,
        9634
      ],
      "op": "AND",
      "path": "96"
    },
    "2447": {
      "fn": "ERC20._burn",
      "offset": [
        9597,
        9634
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2448": {
      "fn": "ERC20._burn",
      "offset": [
        9597,
        9634
      ],
      "op": "PUSH32",
      "path": "96",
      "value": "0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF"
    },
    "2481": {
      "fn": "ERC20._burn",
      "offset": [
        9597,
        9634
      ],
      "op": "SWAP1",
      "path": "96"
    },
    "2482": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2484": {
      "op": "ADD"
    },
    "2485": {
      "fn": "ERC20._burn",
      "offset": [
        9597,
        9634
      ],
      "op": "PUSH2",
      "path": "96",
      "value": "0x527"
    },
    "2488": {
      "op": "JUMP"
    },
    "2489": {
      "op": "JUMPDEST"
    },
    "2490": {
      "op": "DUP1"
    },
    "2491": {
      "op": "CALLDATALOAD"
    },
    "2492": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2494": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2496": {
      "op": "PUSH1",
      "value": "0xA0"
    },
    "2498": {
      "op": "SHL"
    },
    "2499": {
      "op": "SUB"
    },
    "2500": {
      "op": "DUP2"
    },
    "2501": {
      "op": "AND"
    },
    "2502": {
      "op": "DUP2"
    },
    "2503": {
      "op": "EQ"
    },
    "2504": {
      "op": "PUSH2",
      "value": "0x9D0"
    },
    "2507": {
      "op": "JUMPI"
    },
    "2508": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2510": {
      "op": "DUP1"
    },
    "2511": {
      "op": "REVERT"
    },
    "2512": {
      "op": "JUMPDEST"
    },
    "2513": {
      "op": "SWAP2"
    },
    "2514": {
      "op": "SWAP1"
    },
    "2515": {
      "op": "POP"
    },
    "2516": {
      "jump": "o",
      "op": "JUMP"
    },
    "2517": {
      "op": "JUMPDEST"
    },
    "2518": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2520": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2522": {
      "op": "DUP3"
    },
    "2523": {
      "op": "DUP5"
    },
    "2524": {
      "op": "SUB"
    },
    "2525": {
      "op": "SLT"
    },
    "2526": {
      "op": "ISZERO"
    },
    "2527": {
      "op": "PUSH2",
      "value": "0x9E7"
    },
    "2530": {
      "op": "JUMPI"
    },
    "2531": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2533": {
      "op": "DUP1"
    },
    "2534": {
      "op": "REVERT"
    },
    "2535": {
      "op": "JUMPDEST"
    },
    "2536": {
      "op": "PUSH2",
      "value": "0x9F0"
    },
    "2539": {
      "op": "DUP3"
    },
    "2540": {
      "op": "PUSH2",
      "value": "0x9B9"
    },
    "2543": {
      "jump": "i",
      "op": "JUMP"
    },
    "2544": {
      "op": "JUMPDEST"
    },
    "2545": {
      "op": "SWAP4"
    },
    "2546": {
      "op": "SWAP3"
    },
    "2547": {
      "op": "POP"
    },
    "2548": {
      "op": "POP"
    },
    "2549": {
      "op": "POP"
    },
    "2550": {
      "jump": "o",
      "op": "JUMP"
    },
    "2551": {
      "op": "JUMPDEST"
    },
    "2552": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2554": {
      "op": "DUP1"
    },
    "2555": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2557": {
      "op": "DUP4"
    },
    "2558": {
      "op": "DUP6"
    },
    "2559": {
      "op": "SUB"
    },
    "2560": {
      "op": "SLT"
    },
    "2561": {
      "op": "ISZERO"
    },
    "2562": {
      "op": "PUSH2",
      "value": "0xA0A"
    },
    "2565": {
      "op": "JUMPI"
    },
    "2566": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2568": {
      "op": "DUP1"
    },
    "2569": {
      "op": "REVERT"
    },
    "2570": {
      "op": "JUMPDEST"
    },
    "2571": {
      "op": "PUSH2",
      "value": "0xA13"
    },
    "2574": {
      "op": "DUP4"
    },
    "2575": {
      "op": "PUSH2",
      "value": "0x9B9"
    },
    "2578": {
      "jump": "i",
      "op": "JUMP"
    },
    "2579": {
      "op": "JUMPDEST"
    },
    "2580": {
      "op": "SWAP2"
    },
    "2581": {
      "op": "POP"
    },
    "2582": {
      "op": "PUSH2",
      "value": "0xA21"
    },
    "2585": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2587": {
      "op": "DUP5"
    },
    "2588": {
      "op": "ADD"
    },
    "2589": {
      "op": "PUSH2",
      "value": "0x9B9"
    },
    "2592": {
      "jump": "i",
      "op": "JUMP"
    },
    "2593": {
      "op": "JUMPDEST"
    },
    "2594": {
      "op": "SWAP1"
    },
    "2595": {
      "op": "POP"
    },
    "2596": {
      "op": "SWAP3"
    },
    "2597": {
      "op": "POP"
    },
    "2598": {
      "op": "SWAP3"
    },
    "2599": {
      "op": "SWAP1"
    },
    "2600": {
      "op": "POP"
    },
    "2601": {
      "jump": "o",
      "op": "JUMP"
    },
    "2602": {
      "op": "JUMPDEST"
    },
    "2603": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2605": {
      "op": "DUP1"
    },
    "2606": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2608": {
      "op": "PUSH1",
      "value": "0x60"
    },
    "2610": {
      "op": "DUP5"
    },
    "2611": {
      "op": "DUP7"
    },
    "2612": {
      "op": "SUB"
    },
    "2613": {
      "op": "SLT"
    },
    "2614": {
      "op": "ISZERO"
    },
    "2615": {
      "op": "PUSH2",
      "value": "0xA3F"
    },
    "2618": {
      "op": "JUMPI"
    },
    "2619": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2621": {
      "op": "DUP1"
    },
    "2622": {
      "op": "REVERT"
    },
    "2623": {
      "op": "JUMPDEST"
    },
    "2624": {
      "op": "PUSH2",
      "value": "0xA48"
    },
    "2627": {
      "op": "DUP5"
    },
    "2628": {
      "op": "PUSH2",
      "value": "0x9B9"
    },
    "2631": {
      "jump": "i",
      "op": "JUMP"
    },
    "2632": {
      "op": "JUMPDEST"
    },
    "2633": {
      "op": "SWAP3"
    },
    "2634": {
      "op": "POP"
    },
    "2635": {
      "op": "PUSH2",
      "value": "0xA56"
    },
    "2638": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2640": {
      "op": "DUP6"
    },
    "2641": {
      "op": "ADD"
    },
    "2642": {
      "op": "PUSH2",
      "value": "0x9B9"
    },
    "2645": {
      "jump": "i",
      "op": "JUMP"
    },
    "2646": {
      "op": "JUMPDEST"
    },
    "2647": {
      "op": "SWAP2"
    },
    "2648": {
      "op": "POP"
    },
    "2649": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2651": {
      "op": "DUP5"
    },
    "2652": {
      "op": "ADD"
    },
    "2653": {
      "op": "CALLDATALOAD"
    },
    "2654": {
      "op": "SWAP1"
    },
    "2655": {
      "op": "POP"
    },
    "2656": {
      "op": "SWAP3"
    },
    "2657": {
      "op": "POP"
    },
    "2658": {
      "op": "SWAP3"
    },
    "2659": {
      "op": "POP"
    },
    "2660": {
      "op": "SWAP3"
    },
    "2661": {
      "jump": "o",
      "op": "JUMP"
    },
    "2662": {
      "op": "JUMPDEST"
    },
    "2663": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2665": {
      "op": "DUP1"
    },
    "2666": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2668": {
      "op": "DUP4"
    },
    "2669": {
      "op": "DUP6"
    },
    "2670": {
      "op": "SUB"
    },
    "2671": {
      "op": "SLT"
    },
    "2672": {
      "op": "ISZERO"
    },
    "2673": {
      "op": "PUSH2",
      "value": "0xA79"
    },
    "2676": {
      "op": "JUMPI"
    },
    "2677": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2679": {
      "op": "DUP1"
    },
    "2680": {
      "op": "REVERT"
    },
    "2681": {
      "op": "JUMPDEST"
    },
    "2682": {
      "op": "PUSH2",
      "value": "0xA82"
    },
    "2685": {
      "op": "DUP4"
    },
    "2686": {
      "op": "PUSH2",
      "value": "0x9B9"
    },
    "2689": {
      "jump": "i",
      "op": "JUMP"
    },
    "2690": {
      "op": "JUMPDEST"
    },
    "2691": {
      "op": "SWAP5"
    },
    "2692": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2694": {
      "op": "SWAP4"
    },
    "2695": {
      "op": "SWAP1"
    },
    "2696": {
      "op": "SWAP4"
    },
    "2697": {
      "op": "ADD"
    },
    "2698": {
      "op": "CALLDATALOAD"
    },
    "2699": {
      "op": "SWAP4"
    },
    "2700": {
      "op": "POP"
    },
    "2701": {
      "op": "POP"
    },
    "2702": {
      "op": "POP"
    },
    "2703": {
      "jump": "o",
      "op": "JUMP"
    },
    "2704": {
      "op": "JUMPDEST"
    },
    "2705": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2707": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2709": {
      "op": "DUP1"
    },
    "2710": {
      "op": "DUP4"
    },
    "2711": {
      "op": "MSTORE"
    },
    "2712": {
      "op": "DUP4"
    },
    "2713": {
      "op": "MLOAD"
    },
    "2714": {
      "op": "DUP1"
    },
    "2715": {
      "op": "DUP3"
    },
    "2716": {
      "op": "DUP6"
    },
    "2717": {
      "op": "ADD"
    },
    "2718": {
      "op": "MSTORE"
    },
    "2719": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2721": {
      "op": "JUMPDEST"
    },
    "2722": {
      "op": "DUP2"
    },
    "2723": {
      "op": "DUP2"
    },
    "2724": {
      "op": "LT"
    },
    "2725": {
      "op": "ISZERO"
    },
    "2726": {
      "op": "PUSH2",
      "value": "0xABD"
    },
    "2729": {
      "op": "JUMPI"
    },
    "2730": {
      "op": "DUP6"
    },
    "2731": {
      "op": "DUP2"
    },
    "2732": {
      "op": "ADD"
    },
    "2733": {
      "op": "DUP4"
    },
    "2734": {
      "op": "ADD"
    },
    "2735": {
      "op": "MLOAD"
    },
    "2736": {
      "op": "DUP6"
    },
    "2737": {
      "op": "DUP3"
    },
    "2738": {
      "op": "ADD"
    },
    "2739": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2741": {
      "op": "ADD"
    },
    "2742": {
      "op": "MSTORE"
    },
    "2743": {
      "op": "DUP3"
    },
    "2744": {
      "op": "ADD"
    },
    "2745": {
      "op": "PUSH2",
      "value": "0xAA1"
    },
    "2748": {
      "op": "JUMP"
    },
    "2749": {
      "op": "JUMPDEST"
    },
    "2750": {
      "op": "DUP2"
    },
    "2751": {
      "op": "DUP2"
    },
    "2752": {
      "op": "GT"
    },
    "2753": {
      "op": "ISZERO"
    },
    "2754": {
      "op": "PUSH2",
      "value": "0xACF"
    },
    "2757": {
      "op": "JUMPI"
    },
    "2758": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2760": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2762": {
      "op": "DUP4"
    },
    "2763": {
      "op": "DUP8"
    },
    "2764": {
      "op": "ADD"
    },
    "2765": {
      "op": "ADD"
    },
    "2766": {
      "op": "MSTORE"
    },
    "2767": {
      "op": "JUMPDEST"
    },
    "2768": {
      "op": "POP"
    },
    "2769": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "2771": {
      "op": "ADD"
    },
    "2772": {
      "op": "PUSH1",
      "value": "0x1F"
    },
    "2774": {
      "op": "NOT"
    },
    "2775": {
      "op": "AND"
    },
    "2776": {
      "op": "SWAP3"
    },
    "2777": {
      "op": "SWAP1"
    },
    "2778": {
      "op": "SWAP3"
    },
    "2779": {
      "op": "ADD"
    },
    "2780": {
      "op": "PUSH1",
      "value": "0x40"
    },
    "2782": {
      "op": "ADD"
    },
    "2783": {
      "op": "SWAP4"
    },
    "2784": {
      "op": "SWAP3"
    },
    "2785": {
      "op": "POP"
    },
    "2786": {
      "op": "POP"
    },
    "2787": {
      "op": "POP"
    },
    "2788": {
      "jump": "o",
      "op": "JUMP"
    },
    "2789": {
      "op": "JUMPDEST"
    },
    "2790": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2792": {
      "op": "DUP3"
    },
    "2793": {
      "op": "NOT"
    },
    "2794": {
      "op": "DUP3"
    },
    "2795": {
      "op": "GT"
    },
    "2796": {
      "op": "ISZERO"
    },
    "2797": {
      "op": "PUSH2",
      "value": "0xAF8"
    },
    "2800": {
      "op": "JUMPI"
    },
    "2801": {
      "op": "PUSH2",
      "value": "0xAF8"
    },
    "2804": {
      "op": "PUSH2",
      "value": "0xB4F"
    },
    "2807": {
      "jump": "i",
      "op": "JUMP"
    },
    "2808": {
      "op": "JUMPDEST"
    },
    "2809": {
      "op": "POP"
    },
    "2810": {
      "op": "ADD"
    },
    "2811": {
      "op": "SWAP1"
    },
    "2812": {
      "jump": "o",
      "op": "JUMP"
    },
    "2813": {
      "op": "JUMPDEST"
    },
    "2814": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2816": {
      "op": "DUP3"
    },
    "2817": {
      "op": "DUP3"
    },
    "2818": {
      "op": "LT"
    },
    "2819": {
      "op": "ISZERO"
    },
    "2820": {
      "op": "PUSH2",
      "value": "0xB0F"
    },
    "2823": {
      "op": "JUMPI"
    },
    "2824": {
      "op": "PUSH2",
      "value": "0xB0F"
    },
    "2827": {
      "op": "PUSH2",
      "value": "0xB4F"
    },
    "2830": {
      "jump": "i",
      "op": "JUMP"
    },
    "2831": {
      "op": "JUMPDEST"
    },
    "2832": {
      "op": "POP"
    },
    "2833": {
      "op": "SUB"
    },
    "2834": {
      "op": "SWAP1"
    },
    "2835": {
      "jump": "o",
      "op": "JUMP"
    },
    "2836": {
      "op": "JUMPDEST"
    },
    "2837": {
      "op": "PUSH1",
      "value": "0x1"
    },
    "2839": {
      "op": "DUP2"
    },
    "2840": {
      "op": "DUP2"
    },
    "2841": {
      "op": "SHR"
    },
    "2842": {
      "op": "SWAP1"
    },
    "2843": {
      "op": "DUP3"
    },
    "2844": {
      "op": "AND"
    },
    "2845": {
      "op": "DUP1"
    },
    "2846": {
      "op": "PUSH2",
      "value": "0xB28"
    },
    "2849": {
      "op": "JUMPI"
    },
    "2850": {
      "op": "PUSH1",
      "value": "0x7F"
    },
    "2852": {
      "op": "DUP3"
    },
    "2853": {
      "op": "AND"
    },
    "2854": {
      "op": "SWAP2"
    },
    "2855": {
      "op": "POP"
    },
    "2856": {
      "op": "JUMPDEST"
    },
    "2857": {
      "op": "PUSH1",
      "value": "0x20"
    },
    "2859": {
      "op": "DUP3"
    },
    "2860": {
      "op": "LT"
    },
    "2861": {
      "op": "DUP2"
    },
    "2862": {
      "op": "EQ"
    },
    "2863": {
      "op": "ISZERO"
    },
    "2864": {
      "op": "PUSH2",
      "value": "0xB49"
    },
    "2867": {
      "op": "JUMPI"
    },
    "2868": {
      "op": "PUSH4",
      "value": "0x4E487B71"
    },
    "2873": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "2875": {
      "op": "SHL"
    },
    "2876": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2878": {
      "op": "MSTORE"
    },
    "2879": {
      "op": "PUSH1",
      "value": "0x22"
    },
    "2881": {
      "op": "PUSH1",
      "value": "0x4"
    },
    "2883": {
      "op": "MSTORE"
    },
    "2884": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "2886": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2888": {
      "op": "REVERT"
    },
    "2889": {
      "op": "JUMPDEST"
    },
    "2890": {
      "op": "POP"
    },
    "2891": {
      "op": "SWAP2"
    },
    "2892": {
      "op": "SWAP1"
    },
    "2893": {
      "op": "POP"
    },
    "2894": {
      "jump": "o",
      "op": "JUMP"
    },
    "2895": {
      "op": "JUMPDEST"
    },
    "2896": {
      "op": "PUSH4",
      "value": "0x4E487B71"
    },
    "2901": {
      "op": "PUSH1",
      "value": "0xE0"
    },
    "2903": {
      "op": "SHL"
    },
    "2904": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2906": {
      "op": "MSTORE"
    },
    "2907": {
      "op": "PUSH1",
      "value": "0x11"
    },
    "2909": {
      "op": "PUSH1",
      "value": "0x4"
    },
    "2911": {
      "op": "MSTORE"
    },
    "2912": {
      "op": "PUSH1",
      "value": "0x24"
    },
    "2914": {
      "op": "PUSH1",
      "value": "0x0"
    },
    "2916": {
      "op": "REVERT"
    }
  },
  "sha1": "d5b7ad3347b8d4f16b3bc3cb646b6e0232dff095",
  "source": "//SPDX-License-Identifier: Apache-2.0\npragma solidity ^0.8.0;\n\nimport {ERC20} from \"@openzeppelin/contracts/token/ERC20/ERC20.sol\";\n// Don't remove it - required to find the ERC1967Proxy in brownie\nimport {ERC1967Proxy} from \"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol\";\nimport {IMintableERC20} from \"./IMintableERC20.sol\";\n\ncontract TestCurrency is ERC20, IMintableERC20 {\n  address private _owner;\n  uint8 internal immutable _decimals;\n\n  constructor(\n    string memory name_,\n    string memory symbol_,\n    uint256 initialSupply,\n    uint8 decimals_\n  ) ERC20(name_, symbol_) {\n    _owner = msg.sender;\n    _decimals = decimals_;\n    _mint(msg.sender, initialSupply);\n  }\n\n  function decimals() public view virtual override returns (uint8) {\n    return _decimals;\n  }\n\n  function mint(address recipient, uint256 amount) external override {\n    // require(msg.sender == _owner, \"Only owner can mint\");\n    return _mint(recipient, amount);\n  }\n\n  function burn(address recipient, uint256 amount) external override {\n    // require(msg.sender == _owner, \"Only owner can burn\");\n    return _burn(recipient, amount);\n  }\n}\n",
  "sourceMap": "337:795:26:-:0;;;453:233;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2044:13:96;;575:5:26;;582:7;;2044:13:96;;:5;;:13;;;;;:::i;:::-;-1:-1:-1;2067:17:96;;;;:7;;:17;;;;;:::i;:::-;-1:-1:-1;;597:6:26::1;:19:::0;;-1:-1:-1;;;;;;597:19:26::1;606:10;597:19:::0;;::::1;::::0;;;622:21;::::1;::::0;;;;::::1;::::0;649:32:::1;::::0;-1:-1:-1;667:13:26;649:5:::1;:32::i;:::-;453:233:::0;;;;337:795;;8415:389:96;-1:-1:-1;;;;;8498:21:96;;8490:65;;;;-1:-1:-1;;;8490:65:96;;1885:2:114;8490:65:96;;;1867:21:114;1924:2;1904:18;;;1897:30;1963:33;1943:18;;;1936:61;2014:18;;8490:65:96;;;;;;;;8642:6;8626:12;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;8658:18:96;;:9;:18;;;;;;;;;;:28;;8680:6;;8658:9;:28;;8680:6;;8658:28;:::i;:::-;;;;-1:-1:-1;;8701:37:96;;2189:25:114;;;-1:-1:-1;;;;;8701:37:96;;;8718:1;;8701:37;;2177:2:114;2162:18;8701:37:96;;;;;;;8415:389;;:::o;337:795:26:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;337:795:26;;;-1:-1:-1;337:795:26;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;14:885:114;68:5;121:3;114:4;106:6;102:17;98:27;88:2;;139:1;136;129:12;88:2;162:13;;-1:-1:-1;;;;;224:10:114;;;221:2;;;237:18;;:::i;:::-;312:2;306:9;280:2;366:13;;-1:-1:-1;;362:22:114;;;386:2;358:31;354:40;342:53;;;410:18;;;430:22;;;407:46;404:2;;;456:18;;:::i;:::-;496:10;492:2;485:22;531:2;523:6;516:18;553:4;543:14;;598:3;593:2;588;580:6;576:15;572:24;569:33;566:2;;;615:1;612;605:12;566:2;637:1;628:10;;647:133;661:2;658:1;655:9;647:133;;;749:14;;;745:23;;739:30;718:14;;;714:23;;707:63;672:10;;;;647:133;;;798:2;795:1;792:9;789:2;;;857:1;852:2;847;839:6;835:15;831:24;824:35;789:2;887:6;78:821;-1:-1:-1;;;;;;78:821:114:o;904:774::-;1019:6;1027;1035;1043;1096:3;1084:9;1075:7;1071:23;1067:33;1064:2;;;1113:1;1110;1103:12;1064:2;1140:16;;-1:-1:-1;;;;;1205:14:114;;;1202:2;;;1232:1;1229;1222:12;1202:2;1255:61;1308:7;1299:6;1288:9;1284:22;1255:61;:::i;:::-;1245:71;;1362:2;1351:9;1347:18;1341:25;1325:41;;1391:2;1381:8;1378:16;1375:2;;;1407:1;1404;1397:12;1375:2;;1430:63;1485:7;1474:8;1463:9;1459:24;1430:63;:::i;:::-;1420:73;;;1533:2;1522:9;1518:18;1512:25;1502:35;;1580:2;1569:9;1565:18;1559:25;1624:4;1617:5;1613:16;1606:5;1603:27;1593:2;;1644:1;1641;1634:12;1593:2;1054:624;;;;-1:-1:-1;1054:624:114;;-1:-1:-1;;1054:624:114:o;2225:225::-;2265:3;2296:1;2292:6;2289:1;2286:13;2283:2;;;2341:10;2336:3;2332:20;2329:1;2322:31;2376:4;2373:1;2366:15;2404:4;2401:1;2394:15;2283:2;-1:-1:-1;2435:9:114;;2273:177::o;2455:380::-;2534:1;2530:12;;;;2577;;;2598:2;;2652:4;2644:6;2640:17;2630:27;;2598:2;2705;2697:6;2694:14;2674:18;2671:38;2668:2;;;2751:10;2746:3;2742:20;2739:1;2732:31;2786:4;2783:1;2776:15;2814:4;2811:1;2804:15;2668:2;;2510:325;;;:::o;2840:127::-;2901:10;2896:3;2892:20;2889:1;2882:31;2932:4;2929:1;2922:15;2956:4;2953:1;2946:15;2872:95;337:795:26;;;;;;;;;;;;",
  "sourcePath": "contracts/mocks/TestCurrency.sol",
  "type": "contract"
}